RFR JDK-8021954 (round 2) VM SIGSEGV during classloading on MacOS; hs_err_pid file produced

Vladimir Kozlov vladimir.kozlov at oracle.com
Thu Aug 29 12:33:59 PDT 2013


Lois,

On 8/29/13 12:20 PM, Calvin Cheung wrote:
> Hi Lois,
>
> src/share/vm/code/nmethod.cpp
>
> 803 void* nmethod::operator new(size_t size, int nmethod_size) throw() {

Could you remove this throw()? As David pointed it was discussed and, we 
think, it was added by mistake.

thanks,
Vladimir

>
> The above line looks the same to me after the change.
> So perhaps the file doesn't need to be changed (other than the copyright
> year)?
>
> Calvin
>
> On 8/29/2013 11:50 AM, Coleen Phillimore wrote:
>>
>> Lois,
>>
>> This does looks better than the NOEXCEPT macros.  Can other people
>> review this today?  We need this for the clang c++ compiler upgrade
>> testing.
>>
>> Thanks,
>> Coleen
>>
>> On 08/29/2013 02:33 PM, Lois Foltan wrote:
>>>
>>> Please review the following updated webrev:
>>>
>>> Internal webrev:
>>>
>>> http://cr.openjdk.java.net/~coleenp/bug_jdk8021954.2/
>>>
>>> Bug: VM SIGSEGV during classloading on MacOS; hs_err_pid file produced &
>>>          runtime/6878713/Test6878713.sh fails on mac
>>>
>>>     bug links at: https://bugs.openjdk.java.net/browse/JDK-8021954
>>> https://bugs.openjdk.java.net/browse/JDK-8022140
>>>
>>> Summary of fix:
>>>     On MacOS, currently Hotspot is built specifying the -fcheck-new
>>> command line option to the llvm-g++ compiler.
>>>     The -fcheck-new option directs the compiler to "check that the
>>> pointer returned by |operator new| is non-null
>>>      before attempting to modify the storage allocated."  The clang++
>>> compiler does not support the
>>>      -fcheck-new option.  To obtain similiar functionality when
>>> building Hotspot with clang++, empty exception
>>>      throw() specifications must be added to all user-defined
>>> operator new()'s.
>>>
>>> Tests:
>>>      Built on Solaris (12u1), Linux (gcc 4.4.3 & 4.7.3), VS2010,
>>> MacOS (llvm-g++ & clang++)
>>>      Ran vm.quick.testlist on MacOS clang++ built Hotspot image
>>>
>>> Original Testing:
>>>      Solaris: built fastdebug & product images
>>>      Linux: built fastdebug & product images
>>>      MacOS:  built fastdebug & product images using llvm-g++ - ran JTREG
>>>                     built fastdebug & product images using clang++ -
>>> ran JTREG, JCK vm & lang, vm.quick.testlist
>>>      Windows:  built fastdebug & product images with VS2010
>>>
>>> Thank you,
>>> Lois
>>>
>>
>


More information about the hotspot-runtime-dev mailing list