Lines Matching defs:bld
303 BuildUtil bld;
315 bld.setPosition(i, false);
352 i->setIndirect(s, 0, bld.mkOp2v(
353 OP_SHL, TYPE_U32, bld.getSSA(), insn->getSrc(0), insn->getSrc(1)));
390 BuildUtil bld;
761 bld.setPosition(i, false);
764 i->setSrc(1, bld.mkMov(bld.getSSA(type), i->getSrc(0), type)->getDef(0));
927 bld.setPosition(mul1, false);
930 mul1->setSrc(s1, bld.loadImm(NULL, f * imm1.reg.data.f32));
1006 Value *res = c ? bld.getSSA(typeSizeof(ty)) : def;
1007 bld.mkOp2(OP_SHL, ty, res, a, bld.mkImm(shl));
1009 bld.mkOp2(OP_ADD, ty, def, res, c);
1025 Value *res = c ? bld.getSSA() : def;
1026 Instruction *insn = bld.mkOp3(OP_SHLADD, TYPE_U32, res, a, bld.mkImm(shl), a);
1033 bld.mkOp2(OP_ADD, TYPE_U32, def, res, c);
1040 Value *tmp = bld.mkOp3v(OP_XMAD, TYPE_U32, bld.getSSA(),
1041 a, bld.mkImm((uint32_t)b), c ? c : bld.mkImm(0));
1042 bld.mkOp3(OP_XMAD, TYPE_U32, def, a, bld.mkImm((uint32_t)b), tmp)->subOp =
1061 bld.setPosition(i, false);
1073 newi = bld.mkMov(def, bld.mkImm((uint32_t)(val & mask)), TYPE_U32);
1087 bld.setPosition(i, false);
1089 newi = bld.mkCmp(OP_SET, CC_LT, TYPE_S32, i->getDef(0),
1090 TYPE_S32, i->getSrc(t), bld.mkImm(0));
1144 bld.setPosition(i, false);
1185 bld.setPosition(i, false);
1218 bld.setPosition(i, false);
1228 i->setSrc(1, bld.mkImm(util_logbase2(imm0.reg.data.u32)));
1243 tA = bld.getSSA();
1244 tB = bld.getSSA();
1245 mul = bld.mkOp2(OP_MUL, TYPE_U32, tA, i->getSrc(0),
1246 bld.loadImm(NULL, m));
1248 bld.mkOp2(OP_SUB, TYPE_U32, tB, i->getSrc(0), tA);
1249 tA = bld.getSSA();
1251 bld.mkOp2(OP_SHR, TYPE_U32, tA, tB, bld.mkImm(r));
1254 tB = s ? bld.getSSA() : i->getDef(0);
1255 newi = bld.mkOp2(OP_ADD, TYPE_U32, tB, mul->getDef(0), tA);
1257 bld.mkOp2(OP_SHR, TYPE_U32, i->getDef(0), tB, bld.mkImm(s));
1277 tA = bld.getSSA();
1278 tB = bld.getSSA();
1279 bld.mkOp3(OP_MAD, TYPE_S32, tA, i->getSrc(0), bld.loadImm(NULL, m),
1282 bld.mkOp2(OP_SHR, TYPE_S32, tB, tA, bld.mkImm(l - 1));
1285 tA = bld.getSSA();
1286 bld.mkCmp(OP_SET, CC_LT, TYPE_S32, tA, TYPE_S32, i->getSrc(0), bld.mkImm(0));
1287 tD = (d < 0) ? bld.getSSA() : i->getDef(0)->asLValue();
1288 newi = bld.mkOp2(OP_SUB, TYPE_U32, tD, tB, tA);
1290 bld.mkOp1(OP_NEG, TYPE_S32, i->getDef(0), tB);
1299 bld.setPosition(i, false);
1302 i->setSrc(1, bld.loadImm(NULL, imm0.reg.data.u32 - 1));
1311 Value *abs = bld.mkOp1v(OP_ABS, TYPE_S32, bld.getSSA(), i->getSrc(0));
1313 bld.mkCmp(OP_SET, CC_LT, TYPE_S32,
1314 (neg = bld.getSSA(1, prog->getTarget()->nativeFile(FILE_PREDICATE))),
1315 TYPE_S32, i->getSrc(0), bld.loadImm(NULL, 0));
1316 Value *mod = bld.mkOp2v(OP_AND, TYPE_U32, bld.getSSA(), abs,
1317 bld.loadImm(NULL, imm0.reg.data.u32 - 1));
1318 bld.mkOp1(OP_NEG, TYPE_S32, (v1 = bld.getSSA()), mod)
1320 bld.mkOp1(OP_MOV, TYPE_S32, (v2 = bld.getSSA()), mod)
1322 newi = bld.mkOp2(OP_UNION, TYPE_S32, i->getDef(0), v1, v2);
1332 bld.setPosition(i, false);
1333 Value *div = bld.mkOp2v(OP_DIV, i->sType, bld.getSSA(),
1335 newi = bld.mkOp2(OP_ADD, i->sType, i->getDef(0), i->getSrc(0),
1336 bld.mkOp2v(OP_MUL, i->sType, bld.getSSA(), div, i->getSrc(1)));
1479 bld.setPosition(i, false);
1481 i->setSrc(1, bld.loadImm(NULL, imm0.reg.data.u32 + imm1.reg.data.u32));
1486 bld.setPosition(i, false);
1489 i->setSrc(1, bld.loadImm(NULL, ~((1 << imm0.reg.data.u32) - 1)));
1505 bld.setPosition(i, false);
1511 i->setSrc(1, bld.loadImm(NULL, imm1.reg.data.u32 << imm0.reg.data.u32));
1531 bld.setPosition(i, false);
1533 i->setSrc(adds, bld.loadImm(NULL, imm1.reg.data.u32 << imm0.reg.data.u32));
1534 i->setSrc(!adds, bld.mkOp2v(OP_SHL, i->dType,
1535 bld.getSSA(i->def(0).getSize(), i->def(0).getFile()),
1537 bld.mkImm(imm0.reg.data.u32)));
1569 bld.setPosition(i, false); /* make sure bld is init'ed */
1570 i->setSrc(0, bld.mkImm(res));
1603 bld.setPosition(i, true); /* make sure bld is init'ed */
1640 i->setSrc(0, bld.mkImm(res.data.dst)); \
1667 i->setSrc(0, bld.mkImm(res.data.f32));
1688 i->setSrc(0, bld.mkImm(res.data.f64));
1827 BuildUtil bld;
1869 bld.setPosition(abs, false);
1870 abs->setSrc(2, bld.loadImm(bld.getSSA(typeSizeof(ty)), 0));
2303 bld.setPosition(insn, false); // make sure bld is init'ed
2305 insn->setSrc(2, bld.mkImm(val));
2365 bld.setPosition(i, false);
2368 i->setSrc(0, bld.mkSysVal(SV_TID, index));
2437 BuildUtil bld;
2515 bld.setPosition(i, false);
2519 Value *c = i->op == OP_MUL ? bld.mkImm(0) : i->getSrc(2);
2521 Value *tmp0 = bld.getSSA();
2522 Value *tmp1 = bld.getSSA();
2524 Instruction *insn = bld.mkOp3(OP_XMAD, TYPE_U32, tmp0, b, a, c);
2527 insn = bld.mkOp3(OP_XMAD, TYPE_U32, tmp1, b, a, bld.mkImm(0));
2572 BuildUtil bld;
2606 bld.setPosition(i, true);
2608 Value *zero = bld.mkImm(0u);
2609 Value *carry = bld.getSSA(1, FILE_FLAGS);
2627 bld.mkSplit(op1, 4, i->getSrc(0));
2634 bld.mkSplit(op2, 4, i->getSrc(1));
2643 bld.mkSplit(op3, 4, i->getSrc(2));
2650 Value *tmpRes1Hi = bld.getSSA();
2652 bld.mkOp3(OP_MAD, hTy, tmpRes1Hi, op1[1], op2[0], op3[1]);
2654 bld.mkOp2(OP_MUL, hTy, tmpRes1Hi, op1[1], op2[0]);
2656 Value *tmpRes2Hi = bld.mkOp3v(OP_MAD, hTy, bld.getSSA(), op1[0], op2[1], tmpRes1Hi);
2658 Value *def[2] = { bld.getSSA(), bld.getSSA() };
2664 bld.mkOp3(OP_MAD, hTy, def[0], op1[0], op2[0], op3[0])->setFlagsDef(1, carry);
2666 bld.mkOp2(OP_MUL, hTy, def[0], op1[0], op2[0]);
2668 Instruction *hiPart3 = bld.mkOp3(OP_MAD, hTy, def[1], op1[0], op2[0], tmpRes2Hi);
2673 bld.mkOp2(OP_MERGE, i->dType, i->getDef(0), def[0], def[1]);