summaryrefslogtreecommitdiffstats
path: root/src/amd
diff options
context:
space:
mode:
authorDave Airlie <[email protected]>2018-07-03 09:44:22 +1000
committerDave Airlie <[email protected]>2018-07-04 05:32:35 +1000
commit35c82af5399fd5d31572098f7aaf760c1d750dc8 (patch)
tree637fc616960e79fd60a852a9c4fa2c1437b884ea /src/amd
parent0eb65b49442888ec45895b1aa5c0f8087361364f (diff)
radv/radeonsi: add a check ir tm options
This doesn't do much yet, but it makes it easier to move the code to a common shared code base. Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/amd')
-rw-r--r--src/amd/common/ac_llvm_util.h1
-rw-r--r--src/amd/vulkan/radv_shader.c4
2 files changed, 4 insertions, 1 deletions
diff --git a/src/amd/common/ac_llvm_util.h b/src/amd/common/ac_llvm_util.h
index 0ba70835678..2a8f6911365 100644
--- a/src/amd/common/ac_llvm_util.h
+++ b/src/amd/common/ac_llvm_util.h
@@ -59,6 +59,7 @@ enum ac_target_machine_options {
AC_TM_FORCE_ENABLE_XNACK = (1 << 2),
AC_TM_FORCE_DISABLE_XNACK = (1 << 3),
AC_TM_PROMOTE_ALLOCA_TO_SCRATCH = (1 << 4),
+ AC_TM_CHECK_IR = (1 << 5),
};
enum ac_float_mode {
diff --git a/src/amd/vulkan/radv_shader.c b/src/amd/vulkan/radv_shader.c
index 62225baf81e..d115f21cf32 100644
--- a/src/amd/vulkan/radv_shader.c
+++ b/src/amd/vulkan/radv_shader.c
@@ -562,10 +562,12 @@ shader_variant_create(struct radv_device *device,
tm_options |= AC_TM_SUPPORTS_SPILL;
if (device->instance->perftest_flags & RADV_PERFTEST_SISCHED)
tm_options |= AC_TM_SISCHED;
+ if (options->check_ir)
+ tm_options |= AC_TM_CHECK_IR;
radv_init_llvm_once();
tm = ac_create_target_machine(chip_family, tm_options, NULL);
- passmgr = ac_create_passmgr(NULL, options->check_ir);
+ passmgr = ac_create_passmgr(NULL, tm_options & AC_TM_CHECK_IR);
if (gs_copy_shader) {
assert(shader_count == 1);
radv_compile_gs_copy_shader(tm, passmgr, *shaders, &binary,