[9] RFR(S): 8155046: Parse::Block construction using undefined behavior

Vladimir Kozlov vladimir.kozlov at oracle.com
Mon May 30 18:01:41 UTC 2016

I think it was this way to avoid calling MethodLivenessResult 
constructor for _live_locals which required parameters until very recent 


Your changes looks fine.


On 5/30/16 6:55 AM, Tobias Hartmann wrote:
> Hi,
> please review the following patch:
> https://bugs.openjdk.java.net/browse/JDK-8155046
> http://cr.openjdk.java.net/~thartmann/8155046/webrev.00/
> Parse::init_blocks() initializes _blocks by allocating a chunk of memory and initializing the elements by treating them as blocks and calling Parse::Block::init_node(). This is undefined behavior because the objects are not created with "new". I replaced init_node() with the constructor and use placement new to create the blocks. I also added missing field initializations to the constructor.
> Tested with JPRT and RBT (running).
> Thanks,
> Tobias

More information about the hotspot-compiler-dev mailing list