Patch to build 64 bit VM

Greg Lewis glewis at eyesbeyond.com
Mon Dec 29 08:47:06 PST 2008


G'day Xiaobin,

On Sun, Dec 28, 2008 at 01:35:49PM -0800, Xiaobin Lu wrote:
> I tested your patch and it worked fine on 32 & 64 bit build. However, we 
> still need the patch for src/os_cpu/bsd_x86/vm/bytes_bsd_x86.inline.hpp. 
> The patch looks like the following:
> 
> diff -r de4c58dbee8f src/os_cpu/bsd_x86/vm/bytes_bsd_x86.inline.hpp
> --- a/src/os_cpu/bsd_x86/vm/bytes_bsd_x86.inline.hpp    Wed Nov 26 
> 05:05:13 2008 -0800
> +++ b/src/os_cpu/bsd_x86/vm/bytes_bsd_x86.inline.hpp    Wed Dec 17 
> 21:06:49 2008 -0800
> @@ -32,9 +32,9 @@
> 
>  #if defined(AMD64)
>  #  if defined(__APPLE__)
> -#    define bswap16(x) OSSwapInt16(x)
> -#    define bswap32(x) OSSwapInt32(x)
> -#    define bswap64(x) OSSwapInt64(x)
> +#    define bswap_16(x)        OSSwapInt16(x)
> +#    define bswap_32(x)        OSSwapInt32(x)
> +#    define bswap_64(x)        OSSwapInt64(x)
>  #  elif defined(__OpenBSD__)
>  #    define bswap_16(x)        swap16(x)
>  #    define bswap_32(x)        swap32(x)
> 
> You may want to check in the above as well. By the way, I've already 
> integrated my fix to solve the intptr_t and int32_t into hotspot-rt 
> repository (http://hg.openjdk.java.net/jdk7/hotspot-rt/hotspot). It will 
> probably take another week for the fix to show up in the hotspot main 
> repository.

Yep, we do need that too.  Can you please check it in?  I'll check my
change in too and we should have a working 64 bit build.  It sounds like
the 32 bit build will be fixed once your other change bubbles up into
the main tree and we do a merge.

BTW, how are you passing in -m64 to the build on Mac OS X?

> Greg Lewis wrote:
> > On Sun, Dec 28, 2008 at 12:29:26AM -0800, Greg Lewis wrote:
> >   
> >> On Fri, Dec 26, 2008 at 09:27:36AM -0800, Greg Lewis wrote:
> >>     
> >>> On Thu, Dec 25, 2008 at 11:34:58PM -0800, Xiaobin Lu wrote:
> >>>       
> >>>> So with my openjdk id, I can commit the changes without extra permission?
> >>>>         
> >>> I think I should have looked harder at the change first, sorry.  I tried
> >>> compiling with that change in and it broke the i386 build :(.  I'm looking
> >>> at things side by side with the current Linux code to try and get the
> >>> braces and #ifdef's right, but I have to say this part of the code is
> >>> becoming quite confusing with the proliferation of preprocessor
> >>> conditionals.
> >>>
> >>> I hope to have something later today that you can test on Mac OS X.
> >>>       
> >> Instead I shovelled snow/ice for a couple of days so we could get out of
> >> our house to the main roads :).
> >>
> >> Anyway, attached is a patch.  Its not yet compile tested, I've got the
> >> compile started however and will check in the morning.  Please give it
> >> a try on Mac OS X.  Basically it looks like the special handling for
> >> 64 bit Mac OS X was half merged into the x86 handling.
> >>     
> >
> > Oops, as Kurt pointed out I forgot to attach the patch...  Trying again.
> >
> >   
> >>>> Greg Lewis wrote:
> >>>>         
> >>>>> G'day Xiaobin,
> >>>>>
> >>>>> On Mon, Dec 22, 2008 at 11:06:30AM -0800, Xiaobin Lu wrote:
> >>>>>   
> >>>>>           
> >>>>>> I am attaching the patch to make the VM build pass on Mac OS 64 bit.  
> >>>>>> Here is some explanation on the change:
> >>>>>>
> >>>>>> bytes_bsd_x86.inline.cpp:
> >>>>>>
> >>>>>> Change bswap16(x) to bswap_16(x) and the similar, I believe there was a 
> >>>>>> typo for this. When some ported this to Apple platform, they missed a 
> >>>>>> underscore.
> >>>>>>
> >>>>>> os_bsd_x86.cpp
> >>>>>>
> >>>>>> There was a "}" missing for 64 bit build.
> >>>>>>     
> >>>>>>             
> >>>>> Thats a lot clearer when I use diff -b :).
> >>>>>
> >>>>>   
> >>>>>           
> >>>>>> Other changes to make the build pass will be covered by my fix to 
> >>>>>> 6787106 which I am going to put back to open JDK 7 tree soon.
> >>>>>>
> >>>>>> Please help me review the patch and feel free to let me know if there 
> >>>>>> was anything wrong.
> >>>>>>     
> >>>>>>             
> >>>>> Looks good to me -- I say go ahead and commit it.
> >>>>>
> >>>>>   
> >>>>>           
> >>>>>> Greg Lewis wrote:
> >>>>>>     
> >>>>>>             
> >>>>>>> G'day Xiaobin,
> >>>>>>>
> >>>>>>> On Wed, Dec 17, 2008 at 09:14:16PM -0800, Xiaobin Lu wrote:
> >>>>>>>   
> >>>>>>>       
> >>>>>>>               
> >>>>>>>> I am attaching the patch for building 64 bit VM. They are BSD specific 
> >>>>>>>> files.  Would someone review it and help me check it in?
> >>>>>>>>     
> >>>>>>>>         
> >>>>>>>>                 
> >>>>>>> Sure.  Can you comment a little on the changes to
> >>>>>>> src/os_cpu/bsd_x86/vm/bytes_bsd_x86.inline.hpp?  It seems like the diff is
> >>>>>>> bigger than the changes if that makes sense (i.e. there are some whitespace
> >>>>>>> changes due to control flow changes which are hiding those).
> >>>>>>>
> >>>>>>>   
> >>>>>>>       
> >>>>>>>               
> >>>>>
> >>>>>   
> >>>>>           
> >>> -- 
> >>> Greg Lewis                          Email   : glewis at eyesbeyond.com
> >>> Eyes Beyond                         Web     : http://www.eyesbeyond.com
> >>> Information Technology              FreeBSD : glewis at FreeBSD.org
> >>>       
> >> -- 
> >> Greg Lewis                          Email   : glewis at eyesbeyond.com
> >> Eyes Beyond                         Web     : http://www.eyesbeyond.com
> >> Information Technology              FreeBSD : glewis at FreeBSD.org
> >>     
> >
> >   

-- 
Greg Lewis                          Email   : glewis at eyesbeyond.com
Eyes Beyond                         Web     : http://www.eyesbeyond.com
Information Technology              FreeBSD : glewis at FreeBSD.org



More information about the bsd-port-dev mailing list