Lines Matching refs:memsz
6090 class MVE_VLDRSTR_cs<MVE_ldst_direction dir, MVE_memsz memsz, bit P, bit W,
6097 let Inst{8-7} = memsz.encoding;
6102 class MVE_VLDRSTR_cw<MVE_ldst_direction dir, MVE_memsz memsz, bit U,
6109 let Inst{19} = memsz.encoding{0}; // enough to tell 16- from 32-bit
6120 multiclass MVE_VLDRSTR_cw_m<MVE_ldst_direction dir, MVE_memsz memsz,
6122 let AM = memsz.AM in {
6124 dir, memsz, U, 1, 0, size,
6125 dir.Oops, !con(dir.Iops, (ins taddrmode_imm7<memsz.shift>:$addr)),
6129 dir, memsz, U, 1, 1, size,
6131 !con(dir.Iops, (ins taddrmode_imm7<memsz.shift>:$addr)),
6133 let DecoderMethod = "DecodeMVE_MEM_1_pre<"#memsz.shift#">";
6137 dir, memsz, U, 0, 1, size,
6140 t2am_imm7_offset<memsz.shift>:$addr)),
6148 multiclass MVE_VLDRSTR_cs_m<MVE_ldst_direction dir, MVE_memsz memsz,
6150 let AM = memsz.AM in {
6152 dir, memsz, 1, 0,
6153 dir.Oops, !con(dir.Iops, (ins t2addrmode_imm7<memsz.shift>:$addr)),
6157 dir, memsz, 1, 1,
6159 !con(dir.Iops, (ins t2addrmode_imm7_pre<memsz.shift>:$addr)),
6161 let DecoderMethod = "DecodeMVE_MEM_2_pre<"#memsz.shift#">";
6165 dir, memsz, 0, 1,
6172 t2am_imm7_offset<memsz.shift>:$addr)),
6223 class MVE_VLDRSTR_rq<MVE_ldst_direction dir, MVE_memsz memsz, bit U,
6232 let Inst{6} = memsz.encoding{1};
6234 let Inst{4} = memsz.encoding{0};
6244 multiclass MVE_VLDRSTR_rq_w<MVE_ldst_direction dir, MVE_memsz memsz,
6246 def _u : MVE_VLDRSTR_rq<dir, memsz, U, size, 0, asm, suffix, 0>;
6247 def "" : MVE_VLDRSTR_rq<dir, memsz, U, size, 1, asm, suffix, memsz.shift>;
6254 class MVE_VLDRSTR_rq_b<MVE_ldst_direction dir, MVE_memsz memsz,
6256 : MVE_VLDRSTR_rq<dir, memsz, U, size, 0, asm, suffix, 0>;
6259 multiclass MVE_VLDR_rq_w<MVE_memsz memsz, list<MVEVectorVTInfo> VTIs> {
6260 defm "": MVE_VLDRSTR_rq_w<MVE_ld, memsz, "vldr" # memsz.MnemonicLetter,
6266 foreach UnsignedFlag = !if(!eq(VTI.Size, memsz.encoding),
6268 …c (int_arm_mve_vldr_gather_offset GPR:$base, (VTIs[0].Vec MQPR:$offsets), memsz.TypeBits, 0, Unsig…
6270 …rm_mve_vldr_gather_offset GPR:$base, (VTIs[0].Vec MQPR:$offsets), memsz.TypeBits, memsz.shift, Uns…
6272 …mve_vldr_gather_offset_predicated GPR:$base, (VTIs[0].Vec MQPR:$offsets), memsz.TypeBits, 0, Unsig…
6274 …_gather_offset_predicated GPR:$base, (VTIs[0].Vec MQPR:$offsets), memsz.TypeBits, memsz.shift, Uns…
6290 multiclass MVE_VSTR_rq_w<MVE_memsz memsz, list<MVEVectorVTInfo> VTIs> {
6291 defm "": MVE_VLDRSTR_rq_w<MVE_st, memsz, "vstr" # memsz.MnemonicLetter,
6297 …tr_scatter_offset GPR:$base, (VTIs[0].Vec MQPR:$offsets), (VTI.Vec MQPR:$data), memsz.TypeBits, 0),
6299 …_offset GPR:$base, (VTIs[0].Vec MQPR:$offsets), (VTI.Vec MQPR:$data), memsz.TypeBits, memsz.shift),
6301 …_predicated GPR:$base, (VTIs[0].Vec MQPR:$offsets), (VTI.Vec MQPR:$data), memsz.TypeBits, 0, (VTI.…
6303 …ted GPR:$base, (VTIs[0].Vec MQPR:$offsets), (VTI.Vec MQPR:$data), memsz.TypeBits, memsz.shift, (VT…
6356 class MVE_VLDRSTR_qi<MVE_ldst_direction dir, MVE_memsz memsz, bit W, dag wbops,
6359 !con(dir.Iops, (ins mve_addr_q_shift<memsz.shift>:$addr)),
6365 let Inst{8} = memsz.encoding{0}; // enough to distinguish 32- from 64-bit
6371 multiclass MVE_VLDRSTR_qi_m<MVE_ldst_direction dir, MVE_memsz memsz,
6373 def "" : MVE_VLDRSTR_qi<dir, memsz, 0, (outs), asm, "", suffix>;
6374 def _pre : MVE_VLDRSTR_qi<dir, memsz, 1, (outs MQPR:$wb), asm, "!", suffix,
6376 let DecoderMethod="DecodeMVE_MEM_3_pre<"#memsz.shift#">";
6384 multiclass MVE_VLDR_qi<MVE_memsz memsz, MVEVectorVTInfo AVTI,
6386 defm "" : MVE_VLDRSTR_qi_m<MVE_ld, memsz, "vldr" # memsz.MnemonicLetter,
6387 "u" # memsz.TypeBits>;
6400 multiclass MVE_VSTR_qi<MVE_memsz memsz, MVEVectorVTInfo AVTI,
6402 defm "" : MVE_VLDRSTR_qi_m<MVE_st, memsz, "vstr" # memsz.MnemonicLetter,
6403 !cast<string>(memsz.TypeBits)>;
6447 foreach memsz = [MVE_memB, MVE_memH, MVE_memW, MVE_memD] in
6448 foreach suffix = memsz.suffixes in {
6453 if !ne(suffix, memsz.CanonLoadSuffix) then {
6455 "vldr" # memsz.MnemonicLetter # vpt_cond # suffix,
6456 "vldr" # memsz.MnemonicLetter # vpt_cond # memsz.CanonLoadSuffix>;
6459 if !ne(suffix, memsz.CanonStoreSuffix) then {
6461 "vstr" # memsz.MnemonicLetter # vpt_cond # suffix,
6462 "vstr" # memsz.MnemonicLetter # vpt_cond # memsz.CanonStoreSuffix>;