Lines Matching defs:Instruction
1111 struct Instruction { struct
1112 aco_opcode opcode;
1113 Format format;
1114 union {
1119 aco::span<Operand> operands;
1120 aco::span<Definition> definitions;
1124 constexpr bool reads_exec() const noexcept in reads_exec()
1133 constexpr bool writes_exec() const noexcept in writes_exec()
1142 Pseudo_instruction& pseudo() noexcept in pseudo()
1147 const Pseudo_instruction& pseudo() const noexcept in pseudo()
1152 constexpr bool isPseudo() const noexcept { return format == Format::PSEUDO; } in isPseudo()
1154 constexpr bool isSOP1() const noexcept { return format == Format::SOP1; } in isSOP1()
1155 constexpr bool isSOP2() const noexcept { return format == Format::SOP2; } in isSOP2()
1156 constexpr bool isSOPK() const noexcept { return format == Format::SOPK; } in isSOPK()
1157 constexpr bool isSOPP() const noexcept { return format == Format::SOPP; } in isSOPP()
1158 constexpr bool isSOPC() const noexcept { return format == Format::SOPC; } in isSOPC()
1160 SMEM_instruction& smem() noexcept in smem()
1165 const SMEM_instruction& smem() const noexcept in smem()
1170 constexpr bool isSMEM() const noexcept { return format == Format::SMEM; } in isSMEM()
1171 DS_instruction& ds() noexcept in ds()
1176 const DS_instruction& ds() const noexcept in ds()
1181 constexpr bool isDS() const noexcept { return format == Format::DS; } in isDS()
1182 LDSDIR_instruction& ldsdir() noexcept in ldsdir()
1187 const LDSDIR_instruction& ldsdir() const noexcept in ldsdir()
1192 constexpr bool isLDSDIR() const noexcept { return format == Format::LDSDIR; } in isLDSDIR()
1193 MTBUF_instruction& mtbuf() noexcept in mtbuf()
1198 const MTBUF_instruction& mtbuf() const noexcept in mtbuf()
1203 constexpr bool isMTBUF() const noexcept { return format == Format::MTBUF; } in isMTBUF()
1204 MUBUF_instruction& mubuf() noexcept in mubuf()
1209 const MUBUF_instruction& mubuf() const noexcept in mubuf()
1214 constexpr bool isMUBUF() const noexcept { return format == Format::MUBUF; } in isMUBUF()
1215 MIMG_instruction& mimg() noexcept in mimg()
1220 const MIMG_instruction& mimg() const noexcept in mimg()
1225 constexpr bool isMIMG() const noexcept { return format == Format::MIMG; } in isMIMG()
1226 Export_instruction& exp() noexcept in exp()
1231 const Export_instruction& exp() const noexcept in exp()
1236 constexpr bool isEXP() const noexcept { return format == Format::EXP; } in isEXP()
1237 FLAT_instruction& flat() noexcept in flat()
1242 const FLAT_instruction& flat() const noexcept in flat()
1247 constexpr bool isFlat() const noexcept { return format == Format::FLAT; } in isFlat()
1248 FLAT_instruction& global() noexcept in global()
1253 const FLAT_instruction& global() const noexcept in global()
1258 constexpr bool isGlobal() const noexcept { return format == Format::GLOBAL; } in isGlobal()
1259 FLAT_instruction& scratch() noexcept in scratch()
1264 const FLAT_instruction& scratch() const noexcept in scratch()
1269 constexpr bool isScratch() const noexcept { return format == Format::SCRATCH; } in isScratch()
1270 Pseudo_branch_instruction& branch() noexcept in branch()
1275 const Pseudo_branch_instruction& branch() const noexcept in branch()
1280 constexpr bool isBranch() const noexcept { return format == Format::PSEUDO_BRANCH; } in isBranch()
1281 Pseudo_barrier_instruction& barrier() noexcept in barrier()
1286 const Pseudo_barrier_instruction& barrier() const noexcept in barrier()
1291 constexpr bool isBarrier() const noexcept { return format == Format::PSEUDO_BARRIER; } in isBarrier()
1292 Pseudo_reduction_instruction& reduction() noexcept in reduction()
1297 const Pseudo_reduction_instruction& reduction() const noexcept in reduction()
1302 constexpr bool isReduction() const noexcept { return format == Format::PSEUDO_REDUCTION; } in isReduction()
1303 constexpr bool isVOP3P() const noexcept { return (uint16_t)format & (uint16_t)Format::VOP3P; } in isVOP3P()
1304 VINTERP_inreg_instruction& vinterp_inreg() noexcept in vinterp_inreg()
1309 const VINTERP_inreg_instruction& vinterp_inreg() const noexcept in vinterp_inreg()
1314 constexpr bool isVINTERP_INREG() const noexcept { return format == Format::VINTERP_INREG; } in isVINTERP_INREG()
1315 VOPD_instruction& vopd() noexcept in vopd()
1320 const VOPD_instruction& vopd() const noexcept in vopd()
1325 constexpr bool isVOPD() const noexcept { return format == Format::VOPD; } in isVOPD()
1326 constexpr bool isVOP1() const noexcept { return (uint16_t)format & (uint16_t)Format::VOP1; } in isVOP1()
1327 constexpr bool isVOP2() const noexcept { return (uint16_t)format & (uint16_t)Format::VOP2; } in isVOP2()
1328 constexpr bool isVOPC() const noexcept { return (uint16_t)format & (uint16_t)Format::VOPC; } in isVOPC()
1329 constexpr bool isVOP3() const noexcept { return (uint16_t)format & (uint16_t)Format::VOP3; } in isVOP3()
1330 VINTRP_instruction& vintrp() noexcept in vintrp()
1335 const VINTRP_instruction& vintrp() const noexcept in vintrp()
1340 constexpr bool isVINTRP() const noexcept { return format == Format::VINTRP; } in isVINTRP()
1341 DPP16_instruction& dpp16() noexcept in dpp16()
1346 const DPP16_instruction& dpp16() const noexcept in dpp16()
1351 constexpr bool isDPP16() const noexcept { return (uint16_t)format & (uint16_t)Format::DPP16; } in isDPP16()
1352 DPP8_instruction& dpp8() noexcept in dpp8()
1357 const DPP8_instruction& dpp8() const noexcept in dpp8()
1362 constexpr bool isDPP8() const noexcept { return (uint16_t)format & (uint16_t)Format::DPP8; } in isDPP8()
1363 constexpr bool isDPP() const noexcept { return isDPP16() || isDPP8(); } in isDPP()
1364 SDWA_instruction& sdwa() noexcept in sdwa()
1369 const SDWA_instruction& sdwa() const noexcept in sdwa()
1374 constexpr bool isSDWA() const noexcept { return (uint16_t)format & (uint16_t)Format::SDWA; } in isSDWA()
1376 FLAT_instruction& flatlike() { return *(FLAT_instruction*)this; } in flatlike()
1378 const FLAT_instruction& flatlike() const { return *(FLAT_instruction*)this; } in flatlike()
1380 constexpr bool isFlatLike() const noexcept { return isFlat() || isGlobal() || isScratch(); } in isFlatLike()
1382 VALU_instruction& valu() noexcept in valu()
1387 const VALU_instruction& valu() const noexcept in valu()
1392 constexpr bool isVALU() const noexcept in isVALU()
1418 static_assert(sizeof(Instruction) == 16, "Unexpected padding"); argument