CC_INTERP broken in jdk7 hotspot on x86_64

Peng Du imdupeng at gmail.com
Thu Feb 25 09:10:26 PST 2010


Hi, Ivo

I had a similar issue before. See this thread: 
http://mail.openjdk.java.net/pipermail/hotspot-dev/2010-January/002598.html

Try building Zero. It works like a charm for me. 

Peng Du



On Thu, 2010-02-25 at 16:52 +0000, Ivo Anjo wrote:
> I was looking into prototyping some changes using the C++ interpreter
> with the latest (tested with builds 81 and 84) openjdk.
> I edited hotspot/make/linux/platform_amd64 adding -DCC_INTERP, but am
> getting multiple compile errors, possibly due to the fact that this
> combination is not used by default, and the methods referenced are
> inside #ifndef CC_INTERP blocks.
> 
> jdk7-b84/hotspot/src/cpu/x86/vm/interpreter_x86_64.cpp: In member
> function 'unsigned char*
> InterpreterGenerator::generate_abstract_entry()':
> jdk7-b84/hotspot/src/cpu/x86/vm/interpreter_x86_64.cpp:282: error:
> 'class InterpreterMacroAssembler' has no member named
> 'empty_expression_stack'
> jdk7-b84/hotspot/src/cpu/x86/vm/interpreter_x86_64.cpp:284: error:
> 'class InterpreterMacroAssembler' has no member named 'restore_locals'
> 
> jdk7-b84/hotspot/src/cpu/x86/vm/methodHandles_x86.cpp: In static
> member function 'static unsigned char*
> MethodHandles::generate_method_handle_interpreter_entry(MacroAssembler*)':
> jdk7-b84/hotspot/src/cpu/x86/vm/methodHandles_x86.cpp:95: error:
> 'throw_WrongMethodType_entry' is not a member of 'Interpreter'
> 
> jdk7-b84/hotspot/src/cpu/x86/vm/methodHandles_x86.cpp: In static
> member function 'static void
> MethodHandles::generate_method_handle_stub(MacroAssembler*,
> MethodHandles::EntryKind)':
> jdk7-b84/hotspot/src/cpu/x86/vm/methodHandles_x86.cpp:404: error:
> 'throw_WrongMethodType_entry' is not a member of 'Interpreter'
> 
> and finally
> 
> Linking launcher...
> jdk7-b84/build/linux-amd64/hotspot/outputdir/linux_amd64_compiler2/product/libjvm.so:
> undefined reference to
> `AbstractInterpreter::can_be_compiled(methodHandle)'
> collect2: ld returned 1 exit status
> 
> As I am new to hotspot development, may I ask if CC_INTERP is supposed
> to be working for x86_64, or is it just considered "dead code" that is
> kept around for historical reasons and there are no plans to fix it?
> 
> Thanks,
> Ivo Anjo




More information about the hotspot-dev mailing list