RFR: 8325589: C2 SuperWord refactoring: create VLoopAnalyzer with Submodules [v2]

Vladimir Kozlov kvn at openjdk.org
Mon Feb 12 17:45:08 UTC 2024


On Sun, 11 Feb 2024 13:48:42 GMT, Emanuel Peter <epeter at openjdk.org> wrote:

>> Emanuel Peter has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   move _loop_or_ctrl from ResouceArena, bc ResourceMark in SuperWord::dependence_graph
>
> src/hotspot/share/opto/loopnode.hpp line 1116:
> 
>> 1114:   PhaseIdealLoop(PhaseIterGVN& igvn, const PhaseIdealLoop* verify_me = nullptr) :
>> 1115:     PhaseTransform(Ideal_Loop),
>> 1116:     _loop_or_ctrl(igvn.C->comp_arena()),
> 
> Note: `_loop_or_ctrl` used to be on thread `ResourceArea`. This is bad, if we ever modify it during loopopts, inside the scope of a `ResourceMark`. I just wittnessed such a case (memory corruption) because of the new `ResourceMark` in `SuperWord::dependence_graph`.

Should it be done separately and backported (if it affects previous releases)?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/17800#discussion_r1486534950


More information about the hotspot-compiler-dev mailing list