The Version table provides details related to the release that this issue/RFE will be addressed.
Unresolved : Release in which this issue/RFE will be addressed. Resolved: Release in which this issue/RFE has been resolved. Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.
I want to remove LoadUI2L node because, I think, it is wrong and we don't need
it in Ideal graph, we can do the same optimization in .ad files with predicate.
This node reports its memory_type() as T_LONG but it is actually reading from an
integer (4 bytes) field or array element. As result of this mismatch our memory
aliasing analysis and vectors construction code could be incorrect. I hit an
assert I added into superword.cpp today.
LoadUI2L was added as part of "6797305: Add LoadUB and LoadUI opcode class" changes:
http://hg.openjdk.java.net/hsx/hotspot-main/hotspot/rev/337400e7a5dd
If nobody objects I want a volunteer from our new members to do that.
Thanks,
Vladimir
09-10-2012
Here is new mach node definition:
instruct loadUI2L(eRegL dst, memory mem, immL_32bits mask, eFlagsReg cr) %{
match(Set dst (AndL (ConvI2L (LoadI mem)) mask));
effect(KILL cr);
Vladimir