[lworld] RFR: 8264897: [lworld] C2: Use BarrierSetC2::obj_allocate to buffer inline type in PhaseMacroExpand::expand_mh_intrinsic_return

Yi Yang yyang at openjdk.java.net
Fri Apr 16 08:41:57 UTC 2021


On Fri, 16 Apr 2021 06:23:09 GMT, Tobias Hartmann <thartmann at openjdk.org> wrote:

>> Try to reuse existing BarrierSetC2::obj_allocate functionality for PhaseMacroExpand::expand_mh_intrinsic_return.
>> 
>> Testing: x86_64 + linux+ slowdebug/release
>> [x] test/hotspot/jtreg/runtime/valhalla 
>> [x] test/hotspot/jtreg/compiler/valhalla 
>> 
>> Thanks,
>> Yang
>
> src/hotspot/share/opto/macro.cpp line 3239:
> 
>> 3237:     case Node::Class_FlatArrayCheck:
>> 3238:       expand_flatarraycheck_node(n->as_FlatArrayCheck());
>> 3239:       assert(C->macro_count() == (old_macro_count - 1), "expansion must have deleted one node from macro list");
> 
> Why did you delete these asserts?

It seems the checking happens nevertheless right after switch:

https://github.com/openjdk/valhalla/blob/5e88e8a08c4532840c66177e0032953ba6e2956c/src/hotspot/share/opto/macro.cpp#L3220-L3227

-------------

PR: https://git.openjdk.java.net/valhalla/pull/385


More information about the valhalla-dev mailing list