[9] RFR (XS): 8058847: C2: EliminateAutoBox regression after 8042786

Vladimir Ivanov vladimir.x.ivanov at oracle.com
Thu Oct 23 18:21:26 UTC 2014


LoadNode::eliminate_autobox() doesn't care whether the unboxing node 
represents signed or unsigned load. It means that for LoadUB/LoadUS -> 
... -> LoadB/LoadS unboxing/boxing pair, information about unsigned load 
is lost. It leads to incorrect code generation.

The fix is to reify this information in the graph by wrapping the result 
in AddI (_ mask).

Testing: regression test

Best regards,
Vladimir Ivanov

More information about the hotspot-compiler-dev mailing list