forked from OSchip/llvm-project
don't bother making x&-1 only to simplify it in dag combine. This commonly occurs expanding i64 ops.
llvm-svn: 46383
This commit is contained in:
parent
2df73ea849
commit
720d8999c7
|
@ -1877,6 +1877,8 @@ SDOperand SelectionDAG::getNode(unsigned Opcode, MVT::ValueType VT,
|
|||
// worth handling here.
|
||||
if (N2C && N2C->getValue() == 0)
|
||||
return N2;
|
||||
if (N2C && N2C->isAllOnesValue()) // X & -1 -> X
|
||||
return N1;
|
||||
break;
|
||||
case ISD::OR:
|
||||
case ISD::XOR:
|
||||
|
|
Loading…
Reference in New Issue