Browse Source

ac: replace SI.vs.load.input with amdgcn.buffer.load.format

Reviewed-by: Dave Airlie <airlied@redhat.com>
tags/17.1-branchpoint
Marek Olšák 9 years ago
parent
commit
8bde7fb3fc
1 changed files with 20 additions and 0 deletions
  1. 20
    0
      src/amd/common/ac_llvm_build.c

+ 20
- 0
src/amd/common/ac_llvm_build.c View File

@@ -736,6 +736,26 @@ LLVMValueRef ac_build_buffer_load_format(struct ac_llvm_context *ctx,
LLVMValueRef voffset,
bool readonly_memory)
{
if (HAVE_LLVM >= 0x0309) {
LLVMValueRef args [] = {
LLVMBuildBitCast(ctx->builder, rsrc, ctx->v4i32, ""),
vindex,
voffset,
LLVMConstInt(ctx->i1, 0, 0), /* glc */
LLVMConstInt(ctx->i1, 0, 0), /* slc */
};

return ac_emit_llvm_intrinsic(ctx,
"llvm.amdgcn.buffer.load.format.v4f32",
ctx->v4f32, args, ARRAY_SIZE(args),
/* READNONE means writes can't
* affect it, while READONLY means
* that writes can affect it. */
readonly_memory ?
AC_FUNC_ATTR_READNONE :
AC_FUNC_ATTR_READONLY);
}

LLVMValueRef args[] = {
rsrc,
voffset,

Loading…
Cancel
Save