java, javac crash on MacOSX

Kurt Miller kurt at intricatesoftware.com
Tue Jun 30 11:51:00 PDT 2009


Hi Andrei,

If I understand your email correctly:

1) bsd-port will not build with gcc 4.2 due to the below compiler error
2) bsd-port builds fine using soylatte with gcc 4.0.1 on MacOSX and
appears to work fine to
3) The previous build crashes were due to env vars or other issues which
are no longer a problem.

Does that summarize the current state correctly?

Regards,
-Kurt

Andrei Dmitriev wrote:
> Well, I meant that the build itself is crashing with the error below... :(
> 
> Also just verified that I have a fresh bsd repo with latest merge with
> the main OpenJDK:
> 
> The thing is that if I change the variant to debug_build then the
> following compile-time error occur:
> In file included from ../generated/incls/_ad_x86_32.cpp.incl:1,
>                 from ../generated/adfiles/ad_x86_32.cpp:29:
> ../generated/adfiles/ad_x86_32.hpp: In member function 'virtual int
> countLeadingZerosINode::ideal_Opcode() const':
> ../generated/adfiles/ad_x86_32.hpp:4534: error: 'Op_CountLeadingZerosI'
> was not declared in this scope
> ../generated/adfiles/ad_x86_32.hpp: In member function 'virtual int
> countLeadingZerosI_bsrNode::ideal_Opcode() const':
> ../generated/adfiles/ad_x86_32.hpp:4558: error: 'Op_CountLeadingZerosI'
> was not declared in this scope
> ../generated/adfiles/ad_x86_32.hpp: In member function 'virtual int
> countLeadingZerosLNode::ideal_Opcode() const':
> ../generated/adfiles/ad_x86_32.hpp:4582: error: 'Op_CountLeadingZerosL'
> was not declared in this scope
> ../generated/adfiles/ad_x86_32.hpp: In member function 'virtual int
> countLeadingZerosL_bsrNode::ideal_Opcode() const':
> ../generated/adfiles/ad_x86_32.hpp:4607: error: 'Op_CountLeadingZerosL'
> was not declared in this scope
> ../generated/adfiles/ad_x86_32.hpp: In member function 'virtual int
> countTrailingZerosINode::ideal_Opcode() const':
> ../generated/adfiles/ad_x86_32.hpp:4632: error: 'Op_CountTrailingZerosI'
> was not declared in this scope
> ../generated/adfiles/ad_x86_32.hpp: In member function 'virtual int
> countTrailingZerosLNode::ideal_Opcode() const':
> ../generated/adfiles/ad_x86_32.hpp:4656: error: 'Op_CountTrailingZerosL'
> was not declared in this scope
> ../generated/adfiles/ad_x86_32.cpp: At global scope:
> ../generated/adfiles/ad_x86_32.cpp:1079: error: no 'const bool
> Matcher::match_rule_supported(int)' member function declared in class
> 'Matcher'
> ../generated/adfiles/ad_x86_32.cpp: In member function 'virtual void
> countLeadingZerosINode::emit(CodeBuffer&, PhaseRegAlloc*) const':
> ../generated/adfiles/ad_x86_32.cpp:8642: error: 'class MacroAssembler'
> has no member named 'lzcntl'
> ../generated/adfiles/ad_x86_32.cpp: In member function 'virtual void
> countLeadingZerosI_bsrNode::emit(CodeBuffer&, PhaseRegAlloc*) const':
> ../generated/adfiles/ad_x86_32.cpp:8660: error: 'class MacroAssembler'
> has no member named 'bsrl'
> ../generated/adfiles/ad_x86_32.cpp: In member function 'virtual void
> countLeadingZerosLNode::emit(CodeBuffer&, PhaseRegAlloc*) const':
> ../generated/adfiles/ad_x86_32.cpp:8684: error: 'class MacroAssembler'
> has no member named 'lzcntl'
> ../generated/adfiles/ad_x86_32.cpp:8686: error: 'class MacroAssembler'
> has no member named 'lzcntl'
> ../generated/adfiles/ad_x86_32.cpp: In member function 'virtual void
> countLeadingZerosL_bsrNode::emit(CodeBuffer&, PhaseRegAlloc*) const':
> ../generated/adfiles/ad_x86_32.cpp:8708: error: 'class MacroAssembler'
> has no member named 'bsrl'
> ../generated/adfiles/ad_x86_32.cpp:8713: error: 'class MacroAssembler'
> has no member named 'bsrl'
> ../generated/adfiles/ad_x86_32.cpp: In member function 'virtual void
> countTrailingZerosINode::emit(CodeBuffer&, PhaseRegAlloc*) const':
> ../generated/adfiles/ad_x86_32.cpp:8735: error: 'class MacroAssembler'
> has no member named 'bsfl'
> ../generated/adfiles/ad_x86_32.cpp: In member function 'virtual void
> countTrailingZerosLNode::emit(CodeBuffer&, PhaseRegAlloc*) const':
> ../generated/adfiles/ad_x86_32.cpp:8758: error: 'class MacroAssembler'
> has no member named 'bsfl'
> ../generated/adfiles/ad_x86_32.cpp:8760: error: 'class MacroAssembler'
> has no member named 'bsfl'
> ../generated/adfiles/ad_x86_32.cpp: At global scope:
> ../generated/adfiles/ad_x86_32.cpp:22955: error: too many initializers
> for 'const bool [310]'
> make[7]: *** [ad_x86_32.o] Error 1
> make[6]: *** [the_vm] Error 2
> make[5]: *** [jvmg] Error 2
> make[4]: *** [generic_build2] Error 2
> make[3]: *** [jvmg] Error 2
> make[2]: *** [hotspot-build] Error 2
> make[1]: *** [generic_debug_build] Error 2
> make: *** [build_debug_image] Error 2
> real 61.52
> user 31.24
> sys 17.23
> 
> Suspecting that g++ causing this I tried g++4.0.1 (I  upgraded the
> compiler to 4.2 some time ago for some purpose...) and that was the
> reason so at least java/javac are now built and I could compile a test
> and show some GUI now.
> 
> Thanks,
>  Andrei
> 
> 
> Kurt Miller wrote:
>> Hi Andrei,
>>
>> Hmm, it would be helpful to do a debug build. I see you used
>> VARIANT=DBG, but doesn't appear to be working as expected. Can
>> you rebuild with this for your last line of the script?
>>
>> time -p make debug_build $* 2>&1 | tee $log
>>
>> That will get some debug info into libjvm.dylib and hopefully
>> we can see the function and line number that is crashing.
>>
>> Regards,
>> -Kurt
>>
>> Andrei Dmitriev wrote:
>>  
>>> Kurt,
>>>
>>> yep, I used these variables since that time because noticed that they
>>> don't really affect the build process itself - I got some binaries and
>>> never tried how they work.
>>> Now I see that variables... do affect JDK somehow. :(
>>> So here is the script:
>>> --------------------------------
>>> #!/bin/bash                                                                                                                                   
>>>
>>>
>>> export ALT_BOOTDIR=/export/devtools/binary.plugs/soylatte16-i386-1.0.3/
>>> export ANT_HOME=/usr/share/ant
>>> export NO_DOCS=true
>>> export HOTSPOT_BUILD_JOBS=1;
>>> export ALT_FREETYPE_HEADERS_PATH=/usr/X11R6/include;
>>> export ALT_FREETYPE_LIB_PATH=/usr/X11R6/lib;
>>> export ALT_JIBX_LIBS_PATH=/export/devtools/jibx/lib/
>>>
>>> log=bsdport.build.log
>>>
>>> time -p make VARIANT=DBG $* 2>&1 | tee $log
>>> --------------------------------
>>> and it leads to the same error:
>>>
>>> make[7]:
>>> `/Users/dav/bsd-port-reference/build/bsd-i586/hotspot/outputdir/bsd_i486_compiler2/product/../generated/sa-jdi.jar'
>>>
>>> is up to date.
>>> make[6]: `incls/_precompiled.incl.gch' is up to date.
>>> if [ -d /Users/dav/bsd-port-reference/hotspot/agent -a "x86" != "ia64" ]
>>> ; then \
>>>       make -f vm.make libsaproc.dylib; \
>>>    fi
>>> make[7]: `libsaproc.dylib' is up to date.
>>> All done.
>>> cd bsd_i486_compiler2/product && ./test_gamma
>>> java full version "1.6.0_03-p3-landonf_19_aug_2008_14_55-b00"
>>> #
>>> # A fatal error has been detected by the Java Runtime Environment:
>>> #
>>> #  SIGBUS (0xa) at pc=0x00e8d50f, pid=40704, tid=2685097760
>>> #
>>> # JRE version: 6.0_03
>>> # Java VM: OpenJDK Server VM (16.0-b03 mixed mode bsd-x86 )
>>> # Problematic frame:
>>> # V  [libjvm.dylib+0xb150f]
>>> #
>>> # An error report file with more information is saved as:
>>> #
>>> /Users/dav/bsd-port-reference/build/bsd-i586/hotspot/outputdir/bsd_i486_compiler2/product/hs_err_pid40704.log
>>>
>>>
>>> #
>>> # If you would like to submit a bug report, please visit:
>>> #   http://java.sun.com/webapps/bugreport/crash.jsp
>>> #
>>> ./test_gamma: line 12: 40704 Abort trap              ./${gamma:-gamma}
>>> -Xbatch -showversion Queens < /dev/null
>>> make[4]: *** [product] Error 134
>>> make[3]: *** [generic_build2] Error 2
>>> make[2]: *** [product] Error 2
>>> make[1]: *** [hotspot-build] Error 2
>>> make: *** [build_product_image] Error 2
>>> real 41.36
>>> user 32.39
>>> sys 15.49
>>>
>>> Also verified that JAVA_HOME, ALT_HOTSPOT_IMPORT_PATH,
>>> ALT_JDK_IMPORT_PATH not set.
>>> I'm building from the bsd-port/ and bsd-port/hotspot/ folders with
>>> similar results listed above. :(
>>>
>>> Thanks,
>>>  Andrei
>>>
>>>
>>>
>>> Kurt Miller wrote:
>>>    
>>>> Andrei Dmitriev wrote:
>>>>  
>>>>      
>>>>> Hi folks,
>>>>>
>>>>> I'm experiencing a crash with the latest javac and java build on
>>>>> MacOSX:
>>>>> Any ideas what's going on there? I think it's not an issue with the
>>>>> latest merge because I've seen that crash that week too.
>>>>>
>>>>> ../build/bsd-i586/bin/javac
>>>>> #
>>>>> # An unexpected error has been detected by Java Runtime Environment:
>>>>> #
>>>>> #  Internal Error (554E534146450E43505004DA), pid=97421,
>>>>> tid=0xb0051000
>>>>> #
>>>>> # Java VM: Java HotSpot(TM) Client VM
>>>>> (1.6.0_03-p3-landonf_19_aug_2008_14_55-b00 mixed mode)
>>>>>             
>>>>    ^^^^^^^^^^^^^^^^^^^^^^
>>>>
>>>> Hi Andrei,
>>>>
>>>> That looks like the soylatte hotspot not the bsd-port/openjdk7
>>>> hotspot. Did you build with ALT_HOTSPOT_IMPORT_PATH?
>>>>
>>>> ALT_HOTSPOT_IMPORT_PATH and ALT_JDK_IMPORT_PATH can not point
>>>> to a soylatte build. Leave them unset to build bsd-port. See
>>>> the following email for an example of how to get a clean build
>>>> of bsd-port on OS X:
>>>>
>>>> http://mail.openjdk.java.net/pipermail/bsd-port-dev/2009-June/000735.html
>>>>
>>>>
>>>> Regards,
>>>> -Kurt
>>>>         
>>
>>
>>   
> 




More information about the bsd-port-dev mailing list