[Libclc-dev] [PATCH 5/9] r600: Enable vload assembly for local address space for i32 types
Aaron Watry
awatry at gmail.com
Tue Jul 22 18:46:46 PDT 2014
Tested on evergreen.
Signed-off-by: Aaron Watry <awatry at gmail.com>
---
r600/lib/shared/vload.cl | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/r600/lib/shared/vload.cl b/r600/lib/shared/vload.cl
index 79dc976..1d72460 100644
--- a/r600/lib/shared/vload.cl
+++ b/r600/lib/shared/vload.cl
@@ -46,11 +46,8 @@ VLOAD_TYPES()
//Assembly overrides start here
VLOAD_VECTORIZE(int, __private)
-VLOAD_VECTORIZE(int, __local)
VLOAD_VECTORIZE(uint, __private)
-VLOAD_VECTORIZE(uint, __local)
VLOAD_VECTORIZE(float, __private)
-VLOAD_VECTORIZE(float, __local)
//We only define functions for typeN vloadN(), and then just bitcast the result for unsigned types
#define _CLC_VLOAD_ASM_DECL(PRIM_TYPE,LLVM_SCALAR_TYPE,ADDR_SPACE,ADDR_SPACE_ID) \
@@ -75,10 +72,12 @@ _CLC_DECL PRIM_TYPE##16 __clc_vload16_##LLVM_SCALAR_TYPE##__addr##ADDR_SPACE_ID
#define _CLC_VLOAD_ASM_OVERLOAD_ADDR_SPACES(PRIM_TYPE,S_PRIM_TYPE,LLVM_TYPE) \
_CLC_VLOAD_ASM_OVERLOAD_SIZES(PRIM_TYPE, S_PRIM_TYPE, LLVM_TYPE, global, 1) \
_CLC_VLOAD_ASM_OVERLOAD_SIZES(PRIM_TYPE, S_PRIM_TYPE, LLVM_TYPE, constant, 2) \
+ _CLC_VLOAD_ASM_OVERLOAD_SIZES(PRIM_TYPE, S_PRIM_TYPE, LLVM_TYPE, local, 3) \
#define _CLC_VLOAD_ASM_OVERLOADS() \
_CLC_VLOAD_ASM_DECL(int,i32,__global,1) \
_CLC_VLOAD_ASM_DECL(int,i32,__constant,2) \
+ _CLC_VLOAD_ASM_DECL(int,i32,__local,3) \
_CLC_VLOAD_ASM_OVERLOAD_ADDR_SPACES(int,int,i32) \
_CLC_VLOAD_ASM_OVERLOAD_ADDR_SPACES(uint,int,i32) \
_CLC_VLOAD_ASM_OVERLOAD_ADDR_SPACES(float,int,i32) \
--
1.9.1
More information about the Libclc-dev
mailing list