diff options
author | Matt Arsenault <Matthew.Arsenault@amd.com> | 2014-05-22 18:00:15 +0000 |
---|---|---|
committer | Matt Arsenault <Matthew.Arsenault@amd.com> | 2014-05-22 18:00:15 +0000 |
commit | f49da4338a71b7a6053ce8bfcb070a9f145b4d69 (patch) | |
tree | 0184730c5c55e83bf8521f360d3539b7b1351432 /lib/Target/R600/CaymanInstructions.td | |
parent | bd0283a5f29ad439ca6ffec2f44ffb3f503e8ba0 (diff) | |
download | llvm-f49da4338a71b7a6053ce8bfcb070a9f145b4d69.tar.gz llvm-f49da4338a71b7a6053ce8bfcb070a9f145b4d69.tar.bz2 llvm-f49da4338a71b7a6053ce8bfcb070a9f145b4d69.tar.xz |
R600: Add intrinsics for mad24
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@209456 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/R600/CaymanInstructions.td')
-rw-r--r-- | lib/Target/R600/CaymanInstructions.td | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/Target/R600/CaymanInstructions.td b/lib/Target/R600/CaymanInstructions.td index 837d602533..6dded24c6f 100644 --- a/lib/Target/R600/CaymanInstructions.td +++ b/lib/Target/R600/CaymanInstructions.td @@ -21,12 +21,14 @@ def isCayman : Predicate<"Subtarget.hasCaymanISA()">; let Predicates = [isCayman] in { def MULADD_INT24_cm : R600_3OP <0x08, "MULADD_INT24", - [(set i32:$dst, (add (AMDGPUmul_i24 i32:$src0, i32:$src1), i32:$src2))], VecALU + [(set i32:$dst, (AMDGPUmad_i24 i32:$src0, i32:$src1, i32:$src2))], VecALU >; def MUL_INT24_cm : R600_2OP <0x5B, "MUL_INT24", [(set i32:$dst, (AMDGPUmul_i24 i32:$src0, i32:$src1))], VecALU >; +def : IMad24Pat<MULADD_INT24_cm>; + let isVector = 1 in { def RECIP_IEEE_cm : RECIP_IEEE_Common<0x86>; |