C++ Interpreter on amd64

Coleen Phillimore - Sun Microsystems Coleen.Phillimore at Sun.COM
Thu Feb 12 07:47:04 PST 2009


There should be fixes in the latest mercurial repository to build 
CC_INTERP=1 LP64=1 (amd64) with at least one version of gcc.  There are 
bugs in the C++ interpreter in OSR or deoptimization that make it 
crash.  It's not one of our supported configurations so we haven't found 
or fixed them yet.

The function InterpreterMacroAssembler::save_bcp() isn't compiled when 
you make with CC_INTERP=1 so you might have something wrong with your 
make commands.

Coleen

On 02/12/09 00:26, Nagy Mostafa wrote:
> Hi,
> I just want to know if it is possible to compile openjdk with the C++
> interpreter (CC_INTERP = true) on an amd64. I used to compile it
> successfully on a 32-bit machine but since moving to a 64-bit, it
> fails to compile with the following error:
>
> ...
> In file included from ../generated/incls/_precompiled.incl:246:
> /home/nagy/research/hotspot/openjdk/hotspot/src/cpu/x86/vm/interp_masm_x86_64.hpp:
> In member function 'void InterpreterMacroAssembler::save_bcp()':
> /home/nagy/research/hotspot/openjdk/hotspot/src/cpu/x86/vm/interp_masm_x86_64.hpp:58:
> error: 'interpreter_frame_bcx_offset' is not a member of 'frame'
> /home/nagy/research/hotspot/openjdk/hotspot/src/cpu/x86/vm/interp_masm_x86_64.hpp:
> In member function 'void InterpreterMacroAssembler::restore_bcp()':
> /home/nagy/research/hotspot/openjdk/hotspot/src/cpu/x86/vm/interp_masm_x86_64.hpp:63:
> error: 'interpreter_frame_bcx_offset' is not a member of 'frame'
> /home/nagy/research/hotspot/openjdk/hotspot/src/cpu/x86/vm/interp_masm_x86_64.hpp:
> In member function 'void InterpreterMacroAssembler::restore_locals()':
> /home/nagy/research/hotspot/openjdk/hotspot/src/cpu/x86/vm/interp_masm_x86_64.hpp:68:
> error: 'interpreter_frame_locals_offset' is not a member of 'frame'
> /home/nagy/research/hotspot/openjdk/hotspot/src/cpu/x86/vm/interp_masm_x86_64.hpp:
> In member function 'void
> InterpreterMacroAssembler::get_method(RegisterImpl*)':
> /home/nagy/research/hotspot/openjdk/hotspot/src/cpu/x86/vm/interp_masm_x86_64.hpp:74:
> error: 'interpreter_frame_method_offset' is not a member of 'frame'
> /home/nagy/research/hotspot/openjdk/hotspot/src/cpu/x86/vm/interp_masm_x86_64.hpp:
> In member function 'void
> InterpreterMacroAssembler::empty_expression_stack()':
> /home/nagy/research/hotspot/openjdk/hotspot/src/cpu/x86/vm/interp_masm_x86_64.hpp:138:
> error: 'interpreter_frame_monitor_block_top_offset' is not a member of
> 'frame'
> /home/nagy/research/hotspot/openjdk/hotspot/src/cpu/x86/vm/interp_masm_x86_64.hpp:141:
> error: 'interpreter_frame_last_sp_offset' is not a member of 'frame'
> ...
>
> thanks,
> Nagy Mostafa
> UCSB
>   



More information about the hotspot-dev mailing list