Mercurial > hg > truffle
changeset 12542:7cf8b577b6e1
Fix integer stamp join for downMask/lowerBound
author | Gilles Duboscq <duboscq@ssw.jku.at> |
---|---|
date | Wed, 23 Oct 2013 16:51:01 +0200 |
parents | eb9ac998b46f |
children | 37207d7e9056 |
files | graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/type/IntegerStamp.java |
diffstat | 1 files changed, 3 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/type/IntegerStamp.java Wed Oct 23 15:44:39 2013 +0200 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/type/IntegerStamp.java Wed Oct 23 16:51:01 2013 +0200 @@ -185,7 +185,9 @@ return StampFactory.illegal(Kind.Illegal); } IntegerStamp other = (IntegerStamp) otherStamp; - return createStamp(other, Math.min(upperBound, other.upperBound), Math.max(lowerBound, other.lowerBound), downMask | other.downMask, upMask & other.upMask); + long newDownMask = downMask | other.downMask; + long newLowerBound = Math.max(lowerBound, other.lowerBound) | newDownMask; + return createStamp(other, Math.min(upperBound, other.upperBound), newLowerBound, newDownMask, upMask & other.upMask); } @Override