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 | eb260206c3c7c47b5cb70c36bbea58c7d5cf03b7 (patch) | |
| tree | e4d316c0a0ed6171fcf2bc458f4699939977b292 /llvm/test | |
| parent | 9eff5178f13262df39f447c8a410fe20d6abde3f (diff) | |
| download | bcm5719-llvm-eb260206c3c7c47b5cb70c36bbea58c7d5cf03b7.tar.gz bcm5719-llvm-eb260206c3c7c47b5cb70c36bbea58c7d5cf03b7.zip | |
R600: Add intrinsics for mad24
llvm-svn: 209456
Diffstat (limited to 'llvm/test')
| -rw-r--r-- | llvm/test/CodeGen/R600/llvm.AMDGPU.imad24.ll | 14 | ||||
| -rw-r--r-- | llvm/test/CodeGen/R600/llvm.AMDGPU.umad24.ll | 12 |
2 files changed, 26 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/R600/llvm.AMDGPU.imad24.ll b/llvm/test/CodeGen/R600/llvm.AMDGPU.imad24.ll new file mode 100644 index 00000000000..c7a3660b0b9 --- /dev/null +++ b/llvm/test/CodeGen/R600/llvm.AMDGPU.imad24.ll @@ -0,0 +1,14 @@ +; RUN: llc -march=r600 -mcpu=SI -verify-machineinstrs < %s | FileCheck -check-prefix=SI -check-prefix=FUNC %s +; RUN: llc -march=r600 -mcpu=cayman -verify-machineinstrs < %s | FileCheck -check-prefix=CM -check-prefix=FUNC %s + +declare i32 @llvm.AMDGPU.imad24(i32, i32, i32) nounwind readnone + +; FUNC-LABEL: @test_imad24 +; SI: V_MAD_I32_I24 +; CM: MULADD_INT24 +define void @test_imad24(i32 addrspace(1)* %out, i32 %src0, i32 %src1, i32 %src2) nounwind { + %mad = call i32 @llvm.AMDGPU.imad24(i32 %src0, i32 %src1, i32 %src2) nounwind readnone + store i32 %mad, i32 addrspace(1)* %out, align 4 + ret void +} + diff --git a/llvm/test/CodeGen/R600/llvm.AMDGPU.umad24.ll b/llvm/test/CodeGen/R600/llvm.AMDGPU.umad24.ll new file mode 100644 index 00000000000..08daac54424 --- /dev/null +++ b/llvm/test/CodeGen/R600/llvm.AMDGPU.umad24.ll @@ -0,0 +1,12 @@ +; RUN: llc -march=r600 -mcpu=SI -verify-machineinstrs < %s | FileCheck -check-prefix=SI -check-prefix=FUNC %s + +declare i32 @llvm.AMDGPU.umad24(i32, i32, i32) nounwind readnone + +; FUNC-LABEL: @test_umad24 +; SI: V_MAD_U32_U24 +define void @test_umad24(i32 addrspace(1)* %out, i32 %src0, i32 %src1, i32 %src2) nounwind { + %mad = call i32 @llvm.AMDGPU.umad24(i32 %src0, i32 %src1, i32 %src2) nounwind readnone + store i32 %mad, i32 addrspace(1)* %out, align 4 + ret void +} + |

