comparison src/share/vm/opto/output.cpp @ 1274:2883969d09e7

6910664: C2: java/util/Arrays/Sorting.java fails with DeoptimizeALot flag Summary: Matcher::float_in_double should be true only when FPU is used for floats. Reviewed-by: never, twisti
author kvn
date Fri, 19 Feb 2010 10:04:16 -0800
parents b4b440360f1e
children cff162798819
comparison
equal deleted inserted replaced
1273:877a14af58e1 1274:2883969d09e7
676 array->append(new_loc_value( _regalloc, regnum , Location::normal )); 676 array->append(new_loc_value( _regalloc, regnum , Location::normal ));
677 } 677 }
678 #endif //_LP64 678 #endif //_LP64
679 else if( (t->base() == Type::FloatBot || t->base() == Type::FloatCon) && 679 else if( (t->base() == Type::FloatBot || t->base() == Type::FloatCon) &&
680 OptoReg::is_reg(regnum) ) { 680 OptoReg::is_reg(regnum) ) {
681 array->append(new_loc_value( _regalloc, regnum, Matcher::float_in_double 681 array->append(new_loc_value( _regalloc, regnum, Matcher::float_in_double()
682 ? Location::float_in_dbl : Location::normal )); 682 ? Location::float_in_dbl : Location::normal ));
683 } else if( t->base() == Type::Int && OptoReg::is_reg(regnum) ) { 683 } else if( t->base() == Type::Int && OptoReg::is_reg(regnum) ) {
684 array->append(new_loc_value( _regalloc, regnum, Matcher::int_in_long 684 array->append(new_loc_value( _regalloc, regnum, Matcher::int_in_long
685 ? Location::int_in_long : Location::normal )); 685 ? Location::int_in_long : Location::normal ));
686 } else if( t->base() == Type::NarrowOop ) { 686 } else if( t->base() == Type::NarrowOop ) {