[lworld] RFR: 8262308: [lworld] Various small C2 fixes for bugs found by stress testing
thartmann at openjdk.java.net
Thu Feb 25 07:36:07 UTC 2021
More testing with stress flags enabled revealed the following bugs:
- We should not call `remove_dead_node` from `InlineTypeBaseNode::Ideal`. Instead, we should just make sure the dead node is on the IGVN worklist to be removed. I've also removed the `VerifyVM` option from the framework. Such flags can be added manually or via the CI job definitions.
- `PhaseMacroExpand::process_users_of_allocation` needs to handle `InlineTypePtrNodes` because we now keep them until after macro expansion.
- `GraphKit::type_check_receiver` should create a `InlineTypePtrNode` instead of a `InlineTypeNode` because it operates on pointers.
I have a job definition file with all these stress flags enabled that I will integrate separately soon.
- More fixes
- 8262308: [lworld] VerifyIterativeGVN fails with "can not use dead node"
Stats: 21 lines in 4 files changed: 11 ins; 7 del; 3 mod
Fetch: git fetch https://git.openjdk.java.net/valhalla pull/351/head:pull/351
More information about the valhalla-dev