1221 } |
1221 } |
1222 return false; |
1222 return false; |
1223 } |
1223 } |
1224 |
1224 |
1225 //============================================================================= |
1225 //============================================================================= |
1226 //------------------------------NegNode---------------------------------------- |
|
1227 Node *NegFNode::Ideal(PhaseGVN *phase, bool can_reshape) { |
|
1228 if( in(1)->Opcode() == Op_SubF ) |
|
1229 return new (phase->C, 3) SubFNode( in(1)->in(2), in(1)->in(1) ); |
|
1230 return NULL; |
|
1231 } |
|
1232 |
|
1233 Node *NegDNode::Ideal(PhaseGVN *phase, bool can_reshape) { |
|
1234 if( in(1)->Opcode() == Op_SubD ) |
|
1235 return new (phase->C, 3) SubDNode( in(1)->in(2), in(1)->in(1) ); |
|
1236 return NULL; |
|
1237 } |
|
1238 |
|
1239 |
|
1240 //============================================================================= |
|
1241 //------------------------------Value------------------------------------------ |
1226 //------------------------------Value------------------------------------------ |
1242 // Compute sqrt |
1227 // Compute sqrt |
1243 const Type *SqrtDNode::Value( PhaseTransform *phase ) const { |
1228 const Type *SqrtDNode::Value( PhaseTransform *phase ) const { |
1244 const Type *t1 = phase->type( in(1) ); |
1229 const Type *t1 = phase->type( in(1) ); |
1245 if( t1 == Type::TOP ) return Type::TOP; |
1230 if( t1 == Type::TOP ) return Type::TOP; |