summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorTom Stellard <thomas.stellard@amd.com>2014-02-06 18:36:39 +0000
committerTom Stellard <thomas.stellard@amd.com>2014-02-06 18:36:39 +0000
commit603cd56372769416346e817f14454f6b796abae3 (patch)
tree3b76f4fefd2b1cd06bc7fd96ddd433a812ba1328 /lib
parentbecac0f183be5743a27ced2a59cb2ce191206b71 (diff)
downloadllvm-603cd56372769416346e817f14454f6b796abae3.tar.gz
llvm-603cd56372769416346e817f14454f6b796abae3.tar.bz2
llvm-603cd56372769416346e817f14454f6b796abae3.tar.xz
R600/SI: Add a MUBUF store pattern for Imm offsets
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@200934 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/Target/R600/SIInstructions.td5
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/Target/R600/SIInstructions.td b/lib/Target/R600/SIInstructions.td
index 429624a05a..cad41f15fe 100644
--- a/lib/Target/R600/SIInstructions.td
+++ b/lib/Target/R600/SIInstructions.td
@@ -2007,6 +2007,11 @@ defm : MUBUFLoad_Pattern <BUFFER_LOAD_DWORDX4_ADDR64, v4i32,
multiclass MUBUFStore_Pattern <MUBUF Instr, ValueType vt, PatFrag st> {
def : Pat <
+ (st vt:$value, (add i64:$ptr, IMM12bit:$offset)),
+ (Instr $value, (SI_ADDR64_RSRC (i64 0)), $ptr, (as_i16imm $offset))
+ >;
+
+ def : Pat <
(st vt:$value, i64:$ptr),
(Instr $value, (SI_ADDR64_RSRC (i64 0)), $ptr, 0)
>;