Lines Matching refs:asm
420 class MIMG_NoSampler_Helper <mimgopc op, string asm,
429 let AsmString = asm#" $vdata, $vaddr, $srsrc$dmask$unorm$cpol$r128$tfe$lwe$da"
433 class MIMG_NoSampler_Helper_gfx90a <mimgopc op, string asm,
442 let AsmString = asm#" $vdata, $vaddr, $srsrc$dmask$unorm$cpol$r128$lwe$da"
544 multiclass MIMG_NoSampler_Src_Helper <mimgopc op, string asm,
551 def _V1 : MIMG_NoSampler_Helper <op, asm, dst_rc, VGPR_32,
554 def _V1_gfx90a : MIMG_NoSampler_Helper_gfx90a <op, asm, dst_rc, VGPR_32,
556 def _V1_gfx10 : MIMG_NoSampler_gfx10<op, asm, dst_rc, VGPR_32,
560 def _V1_gfx11 : MIMG_NoSampler_gfx11<op, asm, dst_rc, VGPR_32,
567 def _V1_gfx12 : VSAMPLE_Sampler_gfx12<op, asm, dst_rc, 1>;
570 def _V1_gfx12 : VIMAGE_NoSampler_gfx12<op, asm, dst_rc, 1,
578 def _V2 : MIMG_NoSampler_Helper <op, asm, dst_rc, VReg_64>;
580 def _V2_gfx90a : MIMG_NoSampler_Helper_gfx90a <op, asm, dst_rc, VReg_64>;
581 def _V2_gfx10 : MIMG_NoSampler_gfx10<op, asm, dst_rc, VReg_64>;
582 def _V2_nsa_gfx10 : MIMG_NoSampler_nsa_gfx10<op, asm, dst_rc, 2>;
585 def _V2_gfx11 : MIMG_NoSampler_gfx11<op, asm, dst_rc, VReg_64>;
586 def _V2_nsa_gfx11 : MIMG_NoSampler_nsa_gfx11<op, asm, dst_rc, 2>;
592 def _V2_gfx12 : VSAMPLE_Sampler_gfx12<op, asm, dst_rc, 2>;
595 def _V2_gfx12 : VIMAGE_NoSampler_gfx12<op, asm, dst_rc, 2>;
602 def _V3 : MIMG_NoSampler_Helper <op, asm, dst_rc, VReg_96>;
604 def _V3_gfx90a : MIMG_NoSampler_Helper_gfx90a <op, asm, dst_rc, VReg_96>;
605 def _V3_gfx10 : MIMG_NoSampler_gfx10<op, asm, dst_rc, VReg_96>;
606 def _V3_nsa_gfx10 : MIMG_NoSampler_nsa_gfx10<op, asm, dst_rc, 3>;
609 def _V3_gfx11 : MIMG_NoSampler_gfx11<op, asm, dst_rc, VReg_96>;
610 def _V3_nsa_gfx11 : MIMG_NoSampler_nsa_gfx11<op, asm, dst_rc, 3>;
616 def _V3_gfx12 : VSAMPLE_Sampler_gfx12<op, asm, dst_rc, 3>;
619 def _V3_gfx12 : VIMAGE_NoSampler_gfx12<op, asm, dst_rc, 3>;
626 def _V4 : MIMG_NoSampler_Helper <op, asm, dst_rc, VReg_128>;
628 def _V4_gfx90a : MIMG_NoSampler_Helper_gfx90a <op, asm, dst_rc, VReg_128>;
629 def _V4_gfx10 : MIMG_NoSampler_gfx10<op, asm, dst_rc, VReg_128>;
630 def _V4_nsa_gfx10 : MIMG_NoSampler_nsa_gfx10<op, asm, dst_rc, 4,
634 def _V4_gfx11 : MIMG_NoSampler_gfx11<op, asm, dst_rc, VReg_128>;
635 def _V4_nsa_gfx11 : MIMG_NoSampler_nsa_gfx11<op, asm, dst_rc, 4,
642 def _V4_gfx12 : VSAMPLE_Sampler_gfx12<op, asm, dst_rc, 4, VGPR_32,
646 def _V4_gfx12 : VIMAGE_NoSampler_gfx12<op, asm, dst_rc, 4,
653 multiclass MIMG_NoSampler <mimgopc op, string asm, bit has_d16, bit mip = 0,
666 defm _V1 : MIMG_NoSampler_Src_Helper <op, asm, VGPR_32, 1, msaa>;
668 defm _V2 : MIMG_NoSampler_Src_Helper <op, asm, VReg_64, 0, msaa>;
670 defm _V3 : MIMG_NoSampler_Src_Helper <op, asm, VReg_96, 0, msaa>;
672 defm _V4 : MIMG_NoSampler_Src_Helper <op, asm, VReg_128, 0, msaa>;
674 defm _V5 : MIMG_NoSampler_Src_Helper <op, asm, VReg_160, 0, msaa>;
678 class MIMG_Store_Helper <mimgopc op, string asm,
687 let AsmString = asm#" $vdata, $vaddr, $srsrc$dmask$unorm$cpol$r128$tfe$lwe$da"
691 class MIMG_Store_Helper_gfx90a <mimgopc op, string asm,
701 let AsmString = asm#" $vdata, $vaddr, $srsrc$dmask$unorm$cpol$r128$lwe$da"
770 multiclass MIMG_Store_Addr_Helper <mimgopc op, string asm,
778 def _V1 : MIMG_Store_Helper <op, asm, data_rc, VGPR_32,
781 def _V1_gfx90a : MIMG_Store_Helper_gfx90a <op, asm, data_rc, VGPR_32,
783 def _V1_gfx10 : MIMG_Store_gfx10 <op, asm, data_rc, VGPR_32,
787 def _V1_gfx11 : MIMG_Store_gfx11 <op, asm, data_rc, VGPR_32,
792 def _V1_gfx12 : VIMAGE_Store_gfx12 <op, asm, data_rc, 1,
799 def _V2 : MIMG_Store_Helper <op, asm, data_rc, VReg_64>;
800 def _V2_gfx90a : MIMG_Store_Helper_gfx90a <op, asm, data_rc, VReg_64>;
801 def _V2_gfx10 : MIMG_Store_gfx10 <op, asm, data_rc, VReg_64>;
802 def _V2_nsa_gfx10 : MIMG_Store_nsa_gfx10 <op, asm, data_rc, 2>;
805 def _V2_gfx11 : MIMG_Store_gfx11 <op, asm, data_rc, VReg_64>;
806 def _V2_nsa_gfx11 : MIMG_Store_nsa_gfx11 <op, asm, data_rc, 2>;
810 def _V2_gfx12 : VIMAGE_Store_gfx12 <op, asm, data_rc, 2>;
816 def _V3 : MIMG_Store_Helper <op, asm, data_rc, VReg_96>;
817 def _V3_gfx90a : MIMG_Store_Helper_gfx90a <op, asm, data_rc, VReg_96>;
818 def _V3_gfx10 : MIMG_Store_gfx10 <op, asm, data_rc, VReg_96>;
819 def _V3_nsa_gfx10 : MIMG_Store_nsa_gfx10 <op, asm, data_rc, 3>;
822 def _V3_gfx11 : MIMG_Store_gfx11 <op, asm, data_rc, VReg_96>;
823 def _V3_nsa_gfx11 : MIMG_Store_nsa_gfx11 <op, asm, data_rc, 3>;
827 def _V3_gfx12 : VIMAGE_Store_gfx12 <op, asm, data_rc, 3>;
833 def _V4 : MIMG_Store_Helper <op, asm, data_rc, VReg_128>;
834 def _V4_gfx90a : MIMG_Store_Helper_gfx90a <op, asm, data_rc, VReg_128>;
835 def _V4_gfx10 : MIMG_Store_gfx10 <op, asm, data_rc, VReg_128>;
836 def _V4_nsa_gfx10 : MIMG_Store_nsa_gfx10 <op, asm, data_rc, 4,
840 def _V4_gfx11 : MIMG_Store_gfx11 <op, asm, data_rc, VReg_128>;
841 def _V4_nsa_gfx11 : MIMG_Store_nsa_gfx11 <op, asm, data_rc, 4,
846 def _V4_gfx12 : VIMAGE_Store_gfx12 <op, asm, data_rc, 4,
853 multiclass MIMG_Store <mimgopc op, string asm, bit has_d16, bit mip = 0> {
863 defm _V1 : MIMG_Store_Addr_Helper <op, asm, VGPR_32, 1>;
865 defm _V2 : MIMG_Store_Addr_Helper <op, asm, VReg_64, 0>;
867 defm _V3 : MIMG_Store_Addr_Helper <op, asm, VReg_96, 0>;
869 defm _V4 : MIMG_Store_Addr_Helper <op, asm, VReg_128, 0>;
871 defm _V5 : MIMG_Store_Addr_Helper <op, asm, VReg_160, 0>;
875 class MIMG_Atomic_gfx6789_base <bits<8> op, string asm, RegisterClass data_rc,
883 let AsmString = asm#" $vdst, $vaddr, $srsrc$dmask$unorm$cpol$r128$tfe$lwe$da";
886 class MIMG_Atomic_gfx90a_base <bits<8> op, string asm, RegisterClass data_rc,
895 let AsmString = asm#" $vdst, $vaddr, $srsrc$dmask$unorm$cpol$r128$lwe$da";
898 class MIMG_Atomic_si<mimgopc op, string asm, RegisterClass data_rc,
900 : MIMG_Atomic_gfx6789_base<op.SI, asm, data_rc, addr_rc,
905 class MIMG_Atomic_vi<mimgopc op, string asm, RegisterClass data_rc,
907 : MIMG_Atomic_gfx6789_base<op.VI, asm, data_rc, addr_rc, !if(enableDasm, "GFX8", "")> {
912 class MIMG_Atomic_gfx90a<mimgopc op, string asm, RegisterClass data_rc,
914 : MIMG_Atomic_gfx90a_base<op.VI, asm, data_rc, addr_rc, !if(enableDasm, "GFX90A", "")> {
993 multiclass MIMG_Atomic_Addr_Helper_m <mimgopc op, string asm,
1004 def _V1_si : MIMG_Atomic_si <op, asm, data_rc, VGPR_32, enableDasm>;
1007 def _V1_vi : MIMG_Atomic_vi <op, asm, data_rc, VGPR_32, enableDasm>;
1009 def _V1_gfx90a : MIMG_Atomic_gfx90a <op, asm, data_rc, VGPR_32, enableDasm>;
1012 def _V1_gfx10 : MIMG_Atomic_gfx10 <op, asm, data_rc, VGPR_32, enableDasm>;
1015 def _V1_gfx11 : MIMG_Atomic_gfx11 <op, asm, data_rc, VGPR_32, enableDasm>;
1020 def _V1_gfx12 : VIMAGE_Atomic_gfx12 <op, asm, data_rc, 1, enableDasm>;
1028 def _V2_si : MIMG_Atomic_si <op, asm, data_rc, VReg_64, 0>;
1031 def _V2_vi : MIMG_Atomic_vi <op, asm, data_rc, VReg_64, 0>;
1032 def _V2_gfx90a : MIMG_Atomic_gfx90a <op, asm, data_rc, VReg_64, 0>;
1035 def _V2_gfx10 : MIMG_Atomic_gfx10 <op, asm, data_rc, VReg_64, 0>;
1036 def _V2_nsa_gfx10 : MIMG_Atomic_nsa_gfx10 <op, asm, data_rc, 2, 0>;
1039 def _V2_gfx11 : MIMG_Atomic_gfx11 <op, asm, data_rc, VReg_64, 0>;
1040 def _V2_nsa_gfx11 : MIMG_Atomic_nsa_gfx11 <op, asm, data_rc, 2, 0>;
1045 def _V2_gfx12 : VIMAGE_Atomic_gfx12 <op, asm, data_rc, 2, 0>;
1053 def _V3_si : MIMG_Atomic_si <op, asm, data_rc, VReg_96, 0>;
1056 def _V3_vi : MIMG_Atomic_vi <op, asm, data_rc, VReg_96, 0>;
1057 def _V3_gfx90a : MIMG_Atomic_gfx90a <op, asm, data_rc, VReg_96, 0>;
1060 def _V3_gfx10 : MIMG_Atomic_gfx10 <op, asm, data_rc, VReg_96, 0>;
1061 def _V3_nsa_gfx10 : MIMG_Atomic_nsa_gfx10 <op, asm, data_rc, 3, 0>;
1064 def _V3_gfx11 : MIMG_Atomic_gfx11 <op, asm, data_rc, VReg_96, 0>;
1065 def _V3_nsa_gfx11 : MIMG_Atomic_nsa_gfx11 <op, asm, data_rc, 3, 0>;
1070 def _V3_gfx12 : VIMAGE_Atomic_gfx12 <op, asm, data_rc, 3, 0>;
1078 def _V4_si : MIMG_Atomic_si <op, asm, data_rc, VReg_128, 0>;
1081 def _V4_vi : MIMG_Atomic_vi <op, asm, data_rc, VReg_128, 0>;
1082 def _V4_gfx90a : MIMG_Atomic_gfx90a <op, asm, data_rc, VReg_128, 0>;
1085 def _V4_gfx10 : MIMG_Atomic_gfx10 <op, asm, data_rc, VReg_128, 0>;
1086 def _V4_nsa_gfx10 : MIMG_Atomic_nsa_gfx10 <op, asm, data_rc, 4, enableDasm>;
1089 def _V4_gfx11 : MIMG_Atomic_gfx11 <op, asm, data_rc, VReg_128, 0>;
1090 def _V4_nsa_gfx11 : MIMG_Atomic_nsa_gfx11 <op, asm, data_rc, 4, enableDasm>;
1095 def _V4_gfx12 : VIMAGE_Atomic_gfx12 <op, asm, data_rc, 4, enableDasm>;
1102 def : AMDGPUMnemonicAlias<asm, renamed> {
1110 multiclass MIMG_Atomic <mimgopc op, string asm, bit isCmpSwap = 0, bit isFP = 0,
1123 …defm _V1 : MIMG_Atomic_Addr_Helper_m <op, asm, !if(isCmpSwap, VReg_64, VGPR_32), 1, isFP, renamed>;
1125 …defm _V2 : MIMG_Atomic_Addr_Helper_m <op, asm, !if(isCmpSwap, VReg_128, VReg_64), 0, isFP, renamed…
1127 defm _V3 : MIMG_Atomic_Addr_Helper_m <op, asm, VReg_96, 0, isFP, renamed>;
1129 defm _V4 : MIMG_Atomic_Addr_Helper_m <op, asm, VReg_160, 0, isFP, renamed>;
1134 multiclass MIMG_Atomic_Renamed <mimgopc op, string asm, string renamed,
1136 : MIMG_Atomic <op, asm, isCmpSwap, isFP, renamed>;
1138 class MIMG_Sampler_Helper <mimgopc op, string asm, RegisterClass dst_rc,
1145 let AsmString = asm#" $vdata, $vaddr, $srsrc, $ssamp$dmask$unorm$cpol$r128$tfe$lwe$da"
1149 class MIMG_Sampler_gfx90a<mimgopc op, string asm, RegisterClass dst_rc,
1156 let AsmString = asm#" $vdata, $vaddr, $srsrc, $ssamp$dmask$unorm$cpol$r128$lwe$da"
1355 multiclass MIMG_Sampler_Src_Helper <mimgopc op, string asm,
1363 : MIMG_Sampler_Helper <op, asm, dst_rc, addr.RegClass,
1367 : MIMG_Sampler_gfx90a <op, asm, dst_rc, addr.RegClass,
1370 : MIMG_Sampler_gfx10 <op, asm, dst_rc, addr.RegClass,
1375 : MIMG_Sampler_gfx11 <op, asm, dst_rc, addr.RegClass,
1385 : MIMG_Sampler_nsa_gfx10<op, asm, dst_rc, addr.NumWords,
1395 : MIMG_Sampler_nsa_gfx11<op, asm, dst_rc, addr.NumWords, addr.RegClass,
1405 : VSAMPLE_Sampler_gfx12<op, asm, dst_rc, addr.NumWords, addr.RegClass,
1420 …IMG_Sampler_NoReturn <mimgopc op, AMDGPUSampleVariant sample, bit wqm = 0, bit isG16, string asm> {
1433 : MIMG_Sampler_nortn_gfx10 <op, asm, addr.RegClass>;
1437 : MIMG_Sampler_nortn_gfx11 <op, asm, addr.RegClass>;
1446 : MIMG_Sampler_nortn_nsa_gfx10<op, asm, addr.NumWords>;
1455 : MIMG_Sampler_nortn_nsa_gfx11<op, asm, addr.NumWords, addr.RegClass>;
1464 : VSAMPLE_Sampler_nortn_gfx12<op, asm, addr.NumWords, addr.RegClass>;
1473 string asm = "image_sample"#sample.LowerCaseMod#!if(isG16, "_g16", ""),
1483 defm _V1 : MIMG_Sampler_Src_Helper<op, asm, sample, VGPR_32, 1, ExtendedImageInst, isG16>;
1485 defm _V2 : MIMG_Sampler_Src_Helper<op, asm, sample, VReg_64, 0, ExtendedImageInst, isG16>;
1487 defm _V3 : MIMG_Sampler_Src_Helper<op, asm, sample, VReg_96, 0, ExtendedImageInst, isG16>;
1489 defm _V4 : MIMG_Sampler_Src_Helper<op, asm, sample, VReg_128, 0, ExtendedImageInst, isG16>;
1491 defm _V5 : MIMG_Sampler_Src_Helper<op, asm, sample, VReg_160, 0, ExtendedImageInst, isG16>;
1495 defm "_nortn" : MIMG_Sampler_NoReturn <op, sample, wqm, isG16, asm>;
1502 string asm = "image_gather4"#sample.LowerCaseMod> {
1511 defm _V2 : MIMG_Sampler_Src_Helper<op, asm, sample, VReg_64>; /* for packed D16 only */
1513 defm _V4 : MIMG_Sampler_Src_Helper<op, asm, sample, VReg_128, 1>;
1515 defm _V5 : MIMG_Sampler_Src_Helper<op, asm, sample, VReg_160>;
1618 multiclass MIMG_MSAA_Load <mimgopc op, string asm> {
1628 defm _V2 : MIMG_NoSampler_Src_Helper<op, asm, VReg_64, 0, 0, 1>; /* packed D16 */
1630 defm _V3 : MIMG_NoSampler_Src_Helper<op, asm, VReg_96, 0, 0, 1>; /* packed D16 + tfe */
1632 defm _V4 : MIMG_NoSampler_Src_Helper<op, asm, VReg_128, 1, 0, 1>;
1634 defm _V5 : MIMG_NoSampler_Src_Helper<op, asm, VReg_160, 0, 0, 1>;