Latest repo fails to build on OS X

Michael Franz mvfranz at gmail.com
Sat Nov 29 14:51:39 PST 2008


After digging into this I have found that this line:
 movptr(Address(rbp, frame::interpreter_frame_last_sp_offset * wordSize),
(int32_t)NULL_WORD);
from hotspot/src/cpu/x86/vm/interp_masm_x86_32.hpp is causing the problem.
It seems that this version of movptr is for 64 bit architectures.  Based on
the comment in hotspot/src/cpu/x86/vm/assembler_x86.hpp

#ifdef _LP64
  // Generally the next two are only used for moving NULL
  // Although there are situations in initializing the mark word where
  // they could be used. They are dangerous.

  // They only exist on LP64 so that int32_t and intptr_t are not the same
  // and we have ambiguous declarations.

  void movptr(Address dst, int32_t imm32);
  void movptr(Register dst, int32_t imm32);
#endif // _LP64

Previous version of void empty_expression_stack()   used movl instead of
movptr.

I guess _LP64 needs to be defined for Apple/OS X or the guard needs to
include __APPLE__ .

Michael


On Thu, Nov 27, 2008 at 9:01 PM, Michael Franz <mvfranz at gmail.com> wrote:

> Hi,
>
> I updated from the repo to day to test out all the merged code.  I get the
> following errors when trying to build:
> /Users/mfranz/developer/openjdk-bsd/repos/2008-11-27/hotspot/src/cpu/x86/vm/interp_masm_x86_32.hpp:
> In member function 'void
> InterpreterMacroAssembler::empty_expression_stack()':
> /Users/mfranz/developer/openjdk-bsd/repos/2008-11-27/hotspot/src/cpu/x86/vm/interp_masm_x86_32.hpp:123:
> error: call of overloaded 'movptr(Address, int)' is ambiguous
> /Users/mfranz/developer/openjdk-bsd/repos/2008-11-27/hotspot/src/cpu/x86/vm/assembler_x86.hpp:2010:
> note: candidates are: void MacroAssembler::movptr(Address, intptr_t)
> /Users/mfranz/developer/openjdk-bsd/repos/2008-11-27/hotspot/src/cpu/x86/vm/assembler_x86.hpp:2012:
> note:                 void MacroAssembler::movptr(Address, RegisterImpl*)
> make[6]: *** [incls/_precompiled.incl.gch] Error 1
> make[5]: *** [the_vm] Error 2
> make[4]: *** [product] Error 2
> make[3]: *** [generic_build2] Error 2
> make[2]: *** [product] Error 2
> make[1]: *** [hotspot-build] Error 2
> make: *** [build_product_image] Error 2
>
>
> I have not investigated yet, were any of the merged code dealing with this?
>
> I was able to build the November 24 updates.
>
> Michael
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/bsd-port-dev/attachments/20081129/e20a83cc/attachment.html 


More information about the bsd-port-dev mailing list