src/share/vm/opto/subnode.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File
*** old/src/share/vm/opto/subnode.cpp	Mon May  5 12:30:19 2014
--- new/src/share/vm/opto/subnode.cpp	Mon May  5 12:30:18 2014

*** 240,251 **** --- 240,251 ---- //------------------------------sub-------------------------------------------- // A subtract node differences it's two inputs. const Type *SubINode::sub( const Type *t1, const Type *t2 ) const { const TypeInt *r0 = t1->is_int(); // Handy access const TypeInt *r1 = t2->is_int(); ! int32_t lo = r0->_lo - r1->_hi; ! int32_t hi = r0->_hi - r1->_lo; // We next check for 32-bit overflow. // If that happens, we just assume all integers are possible. if( (((r0->_lo ^ r1->_hi) >= 0) || // lo ends have same signs OR ((r0->_lo ^ lo) >= 0)) && // lo results have same signs AND

src/share/vm/opto/subnode.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File