RFR (S) 8149813: Move trusted final field handling from C2 LoadNode::Value to shared code
tobias.hartmann at oracle.com
Mon Feb 15 13:27:45 UTC 2016
this looks good to me (not a reviewer). Thanks for cleaning up string opts!
On 15.02.2016 14:17, Aleksey Shipilev wrote:
> I would like us to consider moving out the "trusted fields" logic from
> C2-ish LoadNode::Value to a shared code:
> With this patch, primitive boxes and Strings are handled in the shared
> code, where all other special cases are listed. Not only this is
> cleaner, it also lets C1 to constant fold those cases too:
> Some changes were neede in StringOpts, because it used to rely on
> constant oop present in a graph after LoadNode::Value -- which was
> inconsistent with the way we pull get_constant_coder anyway.
> Testing: JPRT -testset hotspot, microbenchmarks, eyeballing assembly
More information about the hotspot-compiler-dev