diff options
author | Tom Stellard <thomas.stellard@amd.com> | 2015-03-10 16:16:51 +0000 |
---|---|---|
committer | Tom Stellard <thomas.stellard@amd.com> | 2015-03-10 16:16:51 +0000 |
commit | a14b0114a3a8e400ba1da9d4c71207a27e611c5b (patch) | |
tree | 90e401612ad5b9e6c9e8ec3a562e88fe207a8b72 | |
parent | c229baa94ce19694a68540e8d5a668b7969a7fd3 (diff) | |
download | bcm5719-llvm-a14b0114a3a8e400ba1da9d4c71207a27e611c5b.tar.gz bcm5719-llvm-a14b0114a3a8e400ba1da9d4c71207a27e611c5b.zip |
R600/SI: Add _IDXEN and _BOTHEN variants for buffer_store
llvm-svn: 231798
-rw-r--r-- | llvm/lib/Target/R600/SIInstrInfo.td | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/llvm/lib/Target/R600/SIInstrInfo.td b/llvm/lib/Target/R600/SIInstrInfo.td index d765515a123..5b0dae3324b 100644 --- a/llvm/lib/Target/R600/SIInstrInfo.td +++ b/llvm/lib/Target/R600/SIInstrInfo.td @@ -1975,6 +1975,21 @@ multiclass MUBUF_Store_Helper <mubuf op, string name, RegisterClass vdataClass, "$glc"#"$slc"#"$tfe", []>; } // end offen = 1, idxen = 0 + let offen = 0, idxen = 1 in { + defm _IDXEN : MUBUF_m <op, name#"_idxen", (outs), + (ins vdataClass:$vdata, VGPR_32:$vaddr, SReg_128:$srsrc, + SCSrc_32:$soffset, mbuf_offset:$offset, glc:$glc, + slc:$slc, tfe:$tfe), + name#" $vdata, $vaddr, $srsrc, $soffset idxen"#"$offset"#"$glc"#"$slc"#"$tfe", []>; + } + + let offen = 1, idxen = 1 in { + defm _BOTHEN : MUBUF_m <op, name#"_bothen", (outs), + (ins vdataClass:$vdata, VReg_64:$vaddr, SReg_128:$srsrc, SCSrc_32:$soffset, + mbuf_offset:$offset, glc:$glc, slc:$slc, tfe:$tfe), + name#" $vdata, $vaddr, $srsrc, $soffset idxen offen"#"$offset"#"$glc"#"$slc"#"$tfe", []>; + } + let offen = 0, idxen = 0 in { defm _ADDR64 : MUBUFAddr64_m <op, name#"_addr64", (outs), (ins vdataClass:$vdata, VReg_64:$vaddr, SReg_128:$srsrc, |