Lines Matching defs:obj

96         LdaInstBase(const Brig::BrigInstBase *ib, const BrigObject *obj,
98 : HsailGPUStaticInst(obj, _opcode)
104 unsigned op_offs = obj->getOperandPtr(ib->operands, 0);
105 dest.init(op_offs, obj);
106 op_offs = obj->getOperandPtr(ib->operands, 1);
107 addr.init(op_offs, obj);
172 LdaInst(const Brig::BrigInstBase *ib, const BrigObject *obj,
175 AddrOperandType>(ib, obj, _opcode)
185 decodeLda(const Brig::BrigInstBase *ib, const BrigObject *obj)
187 unsigned op_offs = obj->getOperandPtr(ib->operands, 1);
188 BrigRegOperandInfo regDataType = findRegDataType(op_offs, obj);
191 return new LdaInst<DataType, NoRegAddrOperand>(ib, obj, "ldas");
196 return new LdaInst<DataType, SRegAddrOperand>(ib, obj, "ldas");
198 return new LdaInst<DataType, DRegAddrOperand>(ib, obj, "ldas");
221 LdInstBase(const Brig::BrigInstBase *ib, const BrigObject *obj,
223 : HsailGPUStaticInst(obj, _opcode)
239 unsigned op_offs = obj->getOperandPtr(ib->operands, 0);
240 const Brig::BrigOperand *brigOp = obj->getOperand(op_offs);
242 dest.init(op_offs, obj);
244 op_offs = obj->getOperandPtr(ib->operands, 1);
245 addr.init(op_offs, obj);
255 unsigned op_offs = obj->getOperandPtr(ib->operands, 0);
256 const Brig::BrigOperand *brigOp = obj->getOperand(op_offs);
259 dest.init(op_offs, obj);
261 op_offs = obj->getOperandPtr(ib->operands,1);
262 addr.init(op_offs, obj);
402 LdInst(const Brig::BrigInstBase *ib, const BrigObject *obj,
406 AddrOperandType>(ib, obj, _opcode),
411 unsigned op_offs = obj->getOperandPtr(ib->operands,0);
412 const Brig::BrigOperand *brigOp = obj->getOperand(op_offs);
419 *((unsigned*)obj->getData(brigRegVecOp->elements)) / 4;
430 dest_vect[i].init_from_vect(op_offs, obj, i);
703 decodeLd2(const Brig::BrigInstBase *ib, const BrigObject *obj)
705 unsigned op_offs = obj->getOperandPtr(ib->operands,1);
706 BrigRegOperandInfo tmp = findRegDataType(op_offs, obj);
709 return new LdInst<MemDT, DestDT, NoRegAddrOperand>(ib, obj, "ld");
715 SRegAddrOperand>(ib, obj, "ld");
718 DRegAddrOperand>(ib, obj, "ld");
729 decodeLd(const Brig::BrigInstBase *ib, const BrigObject *obj)
731 unsigned op_offs = obj->getOperandPtr(ib->operands,0);
732 BrigRegOperandInfo dest = findRegDataType(op_offs, obj);
742 return decodeLd2<MemDT, B32>(ib, obj);
746 return decodeLd2<MemDT, U32>(ib, obj);
750 return decodeLd2<MemDT, S32>(ib, obj);
753 return decodeLd2<MemDT, U32>(ib, obj);
761 return decodeLd2<MemDT, B64>(ib, obj);
763 return decodeLd2<MemDT, U64>(ib, obj);
765 return decodeLd2<MemDT, S64>(ib, obj);
767 return decodeLd2<MemDT, U64>(ib, obj);
791 StInstBase(const Brig::BrigInstBase *ib, const BrigObject *obj,
793 : HsailGPUStaticInst(obj, _opcode)
808 unsigned op_offs = obj->getOperandPtr(ib->operands, 0);
809 const BrigOperand *baseOp = obj->getOperand(op_offs);
813 src.init(op_offs, obj);
816 op_offs = obj->getOperandPtr(ib->operands, 1);
817 addr.init(op_offs, obj);
826 unsigned op_offs = obj->getOperandPtr(ib->operands, 0);
827 addr.init(op_offs, obj);
829 op_offs = obj->getOperandPtr(ib->operands, 1);
830 src.init(op_offs, obj);
962 StInst(const Brig::BrigInstBase *ib, const BrigObject *obj,
965 AddrOperandType>(ib, obj, _opcode),
971 unsigned op_offs = obj->getOperandPtr(ib->operands,srcIdx);
972 const Brig::BrigOperand *baseOp = obj->getOperand(op_offs);
981 rinfo = findRegDataType(op_offs, obj);
989 *((unsigned*)obj->getData(brigRegVecOp->elements)) / 4;
1000 src_vect[i].init_from_vect(op_offs, obj, i);
1178 decodeSt(const Brig::BrigInstBase *ib, const BrigObject *obj)
1187 unsigned op_offs = obj->getOperandPtr(ib->operands,destIdx);
1189 BrigRegOperandInfo tmp = findRegDataType(op_offs, obj);
1193 NoRegAddrOperand>(ib, obj, "st", srcIdx);
1199 SRegAddrOperand>(ib, obj, "st", srcIdx);
1202 DRegAddrOperand>(ib, obj, "st", srcIdx);
1226 AtomicInstBase(const Brig::BrigInstBase *ib, const BrigObject *obj,
1228 : HsailGPUStaticInst(obj, _opcode)
1344 unsigned op_offs = obj->getOperandPtr(ib->operands, 0);
1345 dest.init(op_offs, obj);
1347 op_offs = obj->getOperandPtr(ib->operands, 1);
1348 addr.init(op_offs, obj);
1351 op_offs = obj->getOperandPtr(ib->operands, i + 2);
1352 src[i].init(op_offs, obj);
1356 unsigned op_offs = obj->getOperandPtr(ib->operands, 0);
1357 addr.init(op_offs, obj);
1360 op_offs = obj->getOperandPtr(ib->operands, i + 1);
1361 src[i].init(op_offs, obj);
1466 AtomicInst(const Brig::BrigInstBase *ib, const BrigObject *obj,
1470 (ib, obj, _opcode),
1691 constructAtomic(const Brig::BrigInstBase *ib, const BrigObject *obj)
1696 return decodeLd<DataType>(ib, obj);
1700 return decodeSt<S8,S8>(ib, obj);
1702 return decodeSt<S16,S16>(ib, obj);
1704 return decodeSt<S32,S32>(ib, obj);
1706 return decodeSt<S64,S64>(ib, obj);
1712 NumSrcOperands, false>(ib, obj, "atomicnoret");
1715 NumSrcOperands, true>(ib, obj, "atomic");
1721 decodeAtomicHelper(const Brig::BrigInstBase *ib, const BrigObject *obj)
1726 unsigned op_offs = obj->getOperandPtr(ib->operands,addrIndex);
1728 BrigRegOperandInfo tmp = findRegDataType(op_offs, obj);
1732 NumSrcOperands>(ib, obj);
1738 NumSrcOperands>(ib, obj);
1741 NumSrcOperands>(ib, obj);
1753 decodeAtomic(const Brig::BrigInstBase *ib, const BrigObject *obj)
1758 return decodeAtomicHelper<DataType, 2>(ib, obj);
1760 return decodeAtomicHelper<DataType, 1>(ib, obj);
1766 decodeAtomicNoRet(const Brig::BrigInstBase *ib, const BrigObject *obj)
1770 return decodeAtomicHelper<DataType, 2>(ib, obj);
1772 return decodeAtomicHelper<DataType, 1>(ib, obj);