Home | History | Annotate | Download | only in src

Lines Matching refs:Op

1414   void setNextLocalInstIndex(Ice::Operand *Op) {
1415 setOperand(NextLocalInstIndex++, Op);
1429 Ice::Operand *Op = LocalOperands[LocalIndex];
1430 if (Op == nullptr)
1432 return Op;
1521 Ice::Operand *Op = LocalOperands[LocalIndex];
1522 if (Op != nullptr) {
1523 if (auto *Var = dyn_cast<Ice::Variable>(Op)) {
1532 << NextLocalInstIndex << "): " << *Op;
1557 // Sets element Index (in the local operands list) to Op.
1558 void setOperand(NaClBcIndexSize_t Index, Ice::Operand *Op) {
1559 assert(Op);
1563 LocalOperands.push_back(Op);
1585 LocalOperands[LocalIndex] = Op;
1590 if (OldOp == Op)
1596 StrBuf << "Multiple definitions for index " << Index << ": " << *Op
1599 LocalOperands[LocalIndex] = Op;
1612 // Generates type error message for binary operator Op operating on Type
1614 void reportInvalidBinaryOp(Ice::InstArithmetic::OpKind Op, Ice::Type OpTy);
1616 // Validates if integer logical Op, for type OpTy, is valid. Returns true if
1618 bool isValidIntegerLogicalOp(Ice::InstArithmetic::OpKind Op, Ice::Type OpTy) {
1621 reportInvalidBinaryOp(Op, OpTy);
1625 // Validates if integer (or vector of integers) arithmetic Op, for type OpTy,
1628 bool isValidIntegerArithOp(Ice::InstArithmetic::OpKind Op, Ice::Type OpTy) {
1631 reportInvalidBinaryOp(Op, OpTy);
1635 // Checks if floating arithmetic Op, for type OpTy, is valid. Returns true if
1637 bool isValidFloatingArithOp(Ice::InstArithmetic::OpKind Op, Ice::Type OpTy) {
1640 reportInvalidBinaryOp(Op, OpTy);
1644 // Checks if the type of operand Op is the valid pointer type, for the given
1647 bool isValidPointerType(Ice::Operand *Op, const char *InstructionName) {
1649 if (Op->getType() == PtrType)
1654 << ". Found: " << Op->getType();
1746 // and sets Op to the corresponding ICE binary opcode. Returns true if able
1749 Ice::InstArithmetic::OpKind &Op) {
1756 Op = Ice::InstArithmetic::Add;
1761 Op = Ice::InstArithmetic::Add;
1762 return isValidIntegerArithOp(Op, Ty);
1764 Op = Ice::InstArithmetic::Fadd;
1765 return isValidFloatingArithOp(Op, Ty);
1769 Op = Ice::InstArithmetic::Sub;
1770 return isValidIntegerArithOp(Op, Ty);
1772 Op = Ice::InstArithmetic::Fsub;
1773 return isValidFloatingArithOp(Op, Ty);
1777 Op = Ice::InstArithmetic::Mul;
1778 return isValidIntegerArithOp(Op, Ty);
1780 Op = Ice::InstArithmetic::Fmul;
1781 return isValidFloatingArithOp(Op, Ty);
1784 Op = Ice::InstArithmetic::Udiv;
1785 return isValidIntegerArithOp(Op, Ty);
1788 Op = Ice::InstArithmetic::Sdiv;
1789 return isValidIntegerArithOp(Op, Ty);
1791 Op = Ice::InstArithmetic::Fdiv;
1792 return isValidFloatingArithOp(Op, Ty);
1795 Op = Ice::InstArithmetic::Urem;
1796 return isValidIntegerArithOp(Op, Ty);
1799 Op = Ice::InstArithmetic::Srem;
1800 return isValidIntegerArithOp(Op, Ty);
1802 Op = Ice::InstArithmetic::Frem;
1803 return isValidFloatingArithOp(Op, Ty);
1806 Op = Ice::InstArithmetic::Shl;
1807 return isValidIntegerArithOp(Op, Ty);
1809 Op = Ice::InstArithmetic::Lshr;
1810 return isValidIntegerArithOp(Op, Ty);
1812 Op = Ice::InstArithmetic::Ashr;
1813 return isValidIntegerArithOp(Op, Ty);
1815 Op = Ice::InstArithmetic::And;
1816 return isValidIntegerLogicalOp(Op, Ty);
1818 Op = Ice::InstArithmetic::Or;
1819 return isValidIntegerLogicalOp(Op, Ty);
1821 Op = Ice::InstArithmetic::Xor;
1822 return isValidIntegerLogicalOp(Op, Ty);
1978 // Converts PNaCl bitcode Icmp operator to corresponding ICE op. Returns true
1980 bool convertNaClBitcICmpOpToIce(uint64_t Op,
1982 switch (Op) {
2020 // Converts PNaCl bitcode Fcmp operator to corresponding ICE op. Returns true
2022 bool convertNaClBitcFCompOpToIce(uint64_t Op,
2024 switch (Op) {
2154 void FunctionParser::reportInvalidBinaryOp(Ice::InstArithmetic::OpKind Op,
2158 StrBuf << "Invalid operator type for " << Ice::InstArithmetic::getOpName(Op)
2560 Ice::Operand *Op =
2562 if (Op->getType() != Ty) {
2565 StrBuf << "Value " << *Op << " not type " << Ty
2566 << " in phi instruction. Found: " << Op->getType();
2571 Phi->addArgument(Op, getBasicBlock(Values[i + 1]));
2699 Ice::Operand *Op = getRelativeOperand(Values[Index], BaseIndex);
2700 if (Op == nullptr) {
2710 Params.push_back(Op);
2725 Ice::Operand *Op
2726 Ice::Type OpType = Op->getType();
2733 StrBuf << "Argument " << *Op << " of " << printName(Fcn)
2734 << " has invalid type: " << Op->getType();
2948 Ice::Operand *Op = getFunctionParser()->getOperand(Index);
2949 if (auto *V = dyn_cast<Ice::Variable>(Op)) {