C++ Interpreter on 64-bit Linux

Peng Du imdupeng at gmail.com
Fri Jan 29 21:08:06 PST 2010


Thanks, Nagy

I will give the Zero port a spin. I have read Gary's blog some while ago
but have never tried zero before. Was curious about the status of the
interpreters in Hotspot. Anyway, thank you for the nice walk-through. It
helps a lot. 

Peng



On Fri, 2010-01-29 at 19:19 -0800, Nagy Mostafa wrote:
> Hi Peng, 
> I had the same problem with the CPP interpreter. The alternative is to
> use the Gary Benson's hotspot Zero port which is interpreter-only
> hotspot.
> 
> 
> The way I do it is as follows:
> 
> 
> ./configure --enable-zero make icedtea-against-ecj
> 
> 
> This will build the bootstrap VM only. Now you can edit the code in
> "openjdk-ecj" and rebuild like this:
> 
> 
> make hotspot
> 
> 
> To do a clean:
> 
> rm -Rf openjdk-ecj/build/*/hotspot
> 
> 
> then do "make hotspot" again
> 
> 
> It has been a while since I tried all this, so things might have
> changed. I hope this works for you though. More under:
> 
> http://markmail.org/search/?q=Nagy+Mostafa#query:Nagy%20Mostafa+page:1
> +mid:gqklt4gpv3izoqae+state:results
> 
> 
> Thanks, 
> 
> - nagy
> 
> 
> 
> 
> 
> On Fri, Jan 29, 2010 at 3:49 PM, Peng Du <imdupeng at gmail.com> wrote:
>         Hi,
>         
>         Same error with 32-bit Linux and Intel Core2. Does that mean
>         the code of
>         C++ Interpreter on Linux is currently broken? Anyone knows a
>         solution to
>         get the C++ Interpreter working on Linux?
>         
>         BTW, I am using openjdk-7-b80.
>         
>         Thanks
>         
>         
>         
>         
>         On Thu, 2010-01-28 at 12:25 -0600, Peng Du wrote:
>         > Hello,
>         >
>         > Is HotSpot w/ C++ Interpreter currently working on 64-bit
>         Linux
>         > (x86_64)? I tried building HotSpot
>         > with CC_INTERP=true but encountered this error:
>         >
>         > /openjdk/hotspot/src/cpu/x86/vm/interpreter_x86_64.cpp: In
>         member
>         > function 'unsigned char*
>         > InterpreterGenerator::generate_abstract_entry()':
>         > /openjdk/hotspot/src/cpu/x86/vm/interpreter_x86_64.cpp:282:
>         error:
>         > 'class InterpreterMacroAssembler' has no member named
>         > 'empty_expression_stack'
>         > /openjdk/hotspot/src/cpu/x86/vm/interpreter_x86_64.cpp:284:
>         error:
>         > 'class InterpreterMacroAssembler' has no member named
>         'restore_locals'
>         > make[6]: *** [interpreter_x86_64.o] Error 1
>         > make[6]: *** Waiting for unfinished jobs....
>         > /openjdk/hotspot/src/cpu/x86/vm/methodHandles_x86.cpp: In
>         static
>         > member function 'static unsigned char*
>         >
>         MethodHandles::generate_method_handle_interpreter_entry(MacroAssembler*)':
>         > /openjdk/hotspot/src/cpu/x86/vm/methodHandles_x86.cpp:95:
>         error:
>         > 'throw_WrongMethodType_entry' is not a member of
>         'Interpreter'
>         > /openjdk/hotspot/src/cpu/x86/vm/methodHandles_x86.cpp: In
>         static
>         > member function 'static void
>         > MethodHandles::generate_method_handle_stub(MacroAssembler*,
>         > MethodHandles::EntryKind)':
>         > /openjdk/hotspot/src/cpu/x86/vm/methodHandles_x86.cpp:404:
>         error:
>         > 'throw_WrongMethodType_entry' is not a member of
>         'Interpreter'
>         > make[6]: *** [methodHandles_x86.o] Error 1
>         > make[6]: Leaving directory
>         >
>         `/jdk-dist-64-cpp/hotspot/outputdir/linux_amd64_compiler2/product'
>         > make[5]: *** [the_vm] Error 2
>         > make[5]: Leaving directory
>         >
>         `/jdk-dist-64-cpp/hotspot/outputdir/linux_amd64_compiler2/product'
>         > make[4]: *** [product] Error 2
>         > make[4]: Leaving directory
>         `/jdk-dist-64-cpp/hotspot/outputdir'
>         > make[3]: *** [generic_build2] Error 2
>         > make[3]: Leaving directory `/openjdk/hotspot/make'
>         > make[2]: *** [product] Error 2
>         > make[2]: Leaving directory `/openjdk/hotspot/make'
>         > make[1]: *** [hotspot-build] Error 2
>         > make[1]: Leaving directory `/openjdk'
>         > make: *** [build_product_image] Error 2
>         >
>         >
>         > Is there any patch to fix it?
>         >
>         >
>         > Thanks
>         >
>         >
>         >
>         >
>         >
>         >
>         >
>         
>         
>         
> 
> 




More information about the hotspot-dev mailing list