RFR (S): 8152773: C2: LoadNode properties aren't preserved when converting between signed/unsigned variants
vladimir.kozlov at oracle.com
Fri Mar 25 18:04:16 UTC 2016
assert(false, "no unsigned variant"); should print name of node.
Why convert_to_signed_load() does not do the same checks as convert_to_unsigned_load()?
On 3/25/16 10:38 AM, Vladimir Ivanov wrote:
> AndINode::Ideal() converts signed loads to unsigned for some masks. But it constructs fresh nodes and doesn't copy
> LoadNode properties from the node being replaced. It means that operations marked as pinned, mismatched or unaligned
> will not be treated as such anymore.
> The problem was found by compiler/unsafe/UnsafeGetStableArrayElement.
> Testing: failing test, JPRT (in progress), RBT (in progress).
> Best regards,
> Vladimir Ivanov
More information about the hotspot-compiler-dev