summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBas Nieuwenhuizen <bas@basnieuwenhuizen.nl>2019-01-23 01:53:59 +0100
committerDylan Baker <dylan@pnwbakers.com>2019-02-07 09:51:39 -0800
commitb4e8a3294cb08ab22ba90895c3625d172addb92f (patch)
tree07c864675d6786081b011cefbf4d45ddc4ea90ca
parentef6809ba8852df765fd06425c68db251141b7fc3 (diff)
amd/common: Add gep helper for pointer increment.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> (cherry picked from commit e00d9a9a728fe0c91bd295a5818fdb8303f321bf)
-rw-r--r--src/amd/common/ac_llvm_build.c8
-rw-r--r--src/amd/common/ac_llvm_build.h5
2 files changed, 13 insertions, 0 deletions
diff --git a/src/amd/common/ac_llvm_build.c b/src/amd/common/ac_llvm_build.c
index 768364b2dc6..9aff2f8435d 100644
--- a/src/amd/common/ac_llvm_build.c
+++ b/src/amd/common/ac_llvm_build.c
@@ -924,6 +924,14 @@ ac_build_fs_interp_mov(struct ac_llvm_context *ctx,
}
LLVMValueRef
+ac_build_gep_ptr(struct ac_llvm_context *ctx,
+ LLVMValueRef base_ptr,
+ LLVMValueRef index)
+{
+ return LLVMBuildGEP(ctx->builder, base_ptr, &index, 1, "");
+}
+
+LLVMValueRef
ac_build_gep0(struct ac_llvm_context *ctx,
LLVMValueRef base_ptr,
LLVMValueRef index)
diff --git a/src/amd/common/ac_llvm_build.h b/src/amd/common/ac_llvm_build.h
index e47893bbbe6..f218eaf2832 100644
--- a/src/amd/common/ac_llvm_build.h
+++ b/src/amd/common/ac_llvm_build.h
@@ -224,6 +224,11 @@ ac_build_fs_interp_mov(struct ac_llvm_context *ctx,
LLVMValueRef params);
LLVMValueRef
+ac_build_gep_ptr(struct ac_llvm_context *ctx,
+ LLVMValueRef base_ptr,
+ LLVMValueRef index);
+
+LLVMValueRef
ac_build_gep0(struct ac_llvm_context *ctx,
LLVMValueRef base_ptr,
LLVMValueRef index);