From 2be9044ffc285b6c7afcf47f943a7e6cf263201b Mon Sep 17 00:00:00 2001 From: Matt Arsenault Date: Sun, 23 Nov 2014 02:57:50 +0000 Subject: [PATCH] R600/SI: Add additional tests for i1 loads git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@222629 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/CodeGen/R600/load-i1.ll | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/test/CodeGen/R600/load-i1.ll b/test/CodeGen/R600/load-i1.ll index 1378cf70f25..cc8a8829a98 100644 --- a/test/CodeGen/R600/load-i1.ll +++ b/test/CodeGen/R600/load-i1.ll @@ -1,6 +1,5 @@ ; RUN: llc -march=r600 -mcpu=SI -verify-machineinstrs< %s | FileCheck -check-prefix=SI %s - ; SI-LABEL: {{^}}global_copy_i1_to_i1: ; SI: buffer_load_ubyte ; SI: v_and_b32_e32 v{{[0-9]+}}, 1 @@ -12,6 +11,28 @@ define void @global_copy_i1_to_i1(i1 addrspace(1)* %out, i1 addrspace(1)* %in) n ret void } +; SI-LABEL: {{^}}local_copy_i1_to_i1: +; SI: ds_read_u8 +; SI: v_and_b32_e32 v{{[0-9]+}}, 1 +; SI: ds_write_b8 +; SI: s_endpgm +define void @local_copy_i1_to_i1(i1 addrspace(3)* %out, i1 addrspace(3)* %in) nounwind { + %load = load i1 addrspace(3)* %in + store i1 %load, i1 addrspace(3)* %out, align 1 + ret void +} + +; SI-LABEL: {{^}}constant_copy_i1_to_i1: +; SI: buffer_load_ubyte +; SI: v_and_b32_e32 v{{[0-9]+}}, 1 +; SI: buffer_store_byte +; SI: s_endpgm +define void @constant_copy_i1_to_i1(i1 addrspace(1)* %out, i1 addrspace(2)* %in) nounwind { + %load = load i1 addrspace(2)* %in + store i1 %load, i1 addrspace(1)* %out, align 1 + ret void +} + ; SI-LABEL: {{^}}global_sextload_i1_to_i32: ; SI: buffer_load_ubyte ; SI: v_bfe_i32 -- 2.34.1