From 1b3ea38d417e53a42f931ce2efada504a00743c8 Mon Sep 17 00:00:00 2001 From: Quan Anh Mai Date: Tue, 27 Jan 2026 22:16:33 +0700 Subject: [PATCH] Fix merge conflict, address review --- src/hotspot/share/opto/rangeinference.hpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/hotspot/share/opto/rangeinference.hpp b/src/hotspot/share/opto/rangeinference.hpp index 6fa5404e12d..7f2c53c0626 100644 --- a/src/hotspot/share/opto/rangeinference.hpp +++ b/src/hotspot/share/opto/rangeinference.hpp @@ -512,16 +512,16 @@ public: // In other words: // min_carry[i - 1] == 1 iff either: // + (st1._bits._ones[i] & st2._bits._ones[i]) == 1 - // + ((st1._bits._ones[i] | st2._bits._ones[i]) & (~tmp[i])) == 1 + // + ((st1._bits._ones[i] ^ st2._bits._ones[i]) & (~tmp[i])) == 1 // // As a result, we can calculate min_carry: - // min_carry = ((st1._bits._ones & st2._bits._ones) | ((st1._bits._ones | st2._bits._ones) & (~(st1._bits._ones + st2._bits._ones)))) << 1 + // min_carry = ((st1._bits._ones & st2._bits._ones) | ((st1._bits._ones ^ st2._bits._ones) & (~(st1._bits._ones + st2._bits._ones)))) << 1 U min_carry = ((st1._bits._ones & st2._bits._ones) | - ((st1._bits._ones | st2._bits._ones) & (~(st1._bits._ones + st2._bits._ones)))); + ((st1._bits._ones ^ st2._bits._ones) & (~(st1._bits._ones + st2._bits._ones)))); min_carry = min_carry << 1; // Similarly, we can calculate max_carry from ~st1._bits._zeros and ~st2._bits._zeros U max_carry = ((~st1._bits._zeros & ~st2._bits._zeros) | - ((~st1._bits._zeros | ~st2._bits._zeros) & (~(~st1._bits._zeros + ~st2._bits._zeros)))); + ((~st1._bits._zeros ^ ~st2._bits._zeros) & (~(~st1._bits._zeros + ~st2._bits._zeros)))); max_carry = max_carry << 1; // A bit carry[i] is known iff min_carry[i] == max_carry[i], or (min_carry[i] ^ max_carry[i]) == 0 U carry_known_bits = ~(min_carry ^ max_carry); @@ -533,7 +533,7 @@ public: U res = st1._bits._ones ^ st2._bits._ones ^ min_carry; U zeros = known_bits & ~res; U ones = known_bits & res; - return CT::make(TypeIntPrototype, U>{{lo, hi}, {ulo, uhi}, {zeros, ones}}, MAX2(t1->_widen, t2->_widen)); + return TypeIntMirror, U>::make(TypeIntPrototype, U>{{lo, hi}, {ulo, uhi}, {zeros, ones}}); }); } @@ -604,7 +604,7 @@ public: U res = st1._bits._ones ^ st2._bits._ones ^ min_carry; U zeros = known_bits & ~res; U ones = known_bits & res; - return CT::make(TypeIntPrototype, U>{{lo, hi}, {ulo, uhi}, {zeros, ones}}, MAX2(t1->_widen, t2->_widen)); + return TypeIntMirror, U>::make(TypeIntPrototype, U>{{lo, hi}, {ulo, uhi}, {zeros, ones}}); }); } };