reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/Target/AArch64/AArch64ISelLowering.cpp
11464   if (!Op->hasOneUse())
11465     return Op;
11473   if (Op->getOpcode() == ISD::TRUNCATE &&
11474       Bit < Op->getValueType(0).getSizeInBits()) {
11475     return getTestBitOperand(Op->getOperand(0), Bit, Invert, DAG);
11479   if (Op->getOpcode() == ISD::ANY_EXTEND &&
11480       Bit < Op->getOperand(0).getValueSizeInBits()) {
11481     return getTestBitOperand(Op->getOperand(0), Bit, Invert, DAG);
11484   if (Op->getNumOperands() != 2)
11485     return Op;
11487   auto *C = dyn_cast<ConstantSDNode>(Op->getOperand(1));
11489     return Op;
11491   switch (Op->getOpcode()) {
11493     return Op;
11498       return getTestBitOperand(Op->getOperand(0), Bit, Invert, DAG);
11499     return Op;
11504         (Bit - C->getZExtValue()) < Op->getValueType(0).getSizeInBits()) {
11506       return getTestBitOperand(Op->getOperand(0), Bit, Invert, DAG);
11508     return Op;
11513     if (Bit >= Op->getValueType(0).getSizeInBits())
11514       Bit = Op->getValueType(0).getSizeInBits() - 1;
11515     return getTestBitOperand(Op->getOperand(0), Bit, Invert, DAG);
11519     if ((Bit + C->getZExtValue()) < Op->getValueType(0).getSizeInBits()) {
11521       return getTestBitOperand(Op->getOperand(0), Bit, Invert, DAG);
11523     return Op;
11529     return getTestBitOperand(Op->getOperand(0), Bit, Invert, DAG);