<div dir="auto">For patches 4-8: <div dir="auto">Reviewed-by: Marek Olšák <<a href="mailto:marek.olsak@amd.com">marek.olsak@amd.com</a>></div><div dir="auto"><br></div><div dir="auto">Marek</div></div><br><div class="gmail_quote"><div dir="ltr">On Mon, Jul 2, 2018, 8:48 PM Dave Airlie <<a href="mailto:airlied@gmail.com">airlied@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">From: Dave Airlie <<a href="mailto:airlied@redhat.com" target="_blank" rel="noreferrer">airlied@redhat.com</a>><br>
<br>
This doesn't do much yet, but it makes it easier to move the code<br>
to a common shared code base.<br>
---<br>
 src/amd/common/ac_llvm_util.h          | 1 +<br>
 src/amd/vulkan/radv_shader.c           | 4 +++-<br>
 src/gallium/drivers/radeonsi/si_pipe.c | 5 +++--<br>
 3 files changed, 7 insertions(+), 3 deletions(-)<br>
<br>
diff --git a/src/amd/common/ac_llvm_util.h b/src/amd/common/ac_llvm_util.h<br>
index 6e9814ad3eb..6269bee7d98 100644<br>
--- a/src/amd/common/ac_llvm_util.h<br>
+++ b/src/amd/common/ac_llvm_util.h<br>
@@ -59,6 +59,7 @@ enum ac_target_machine_options {<br>
        AC_TM_FORCE_ENABLE_XNACK = (1 << 2),<br>
        AC_TM_FORCE_DISABLE_XNACK = (1 << 3),<br>
        AC_TM_PROMOTE_ALLOCA_TO_SCRATCH = (1 << 4),<br>
+       AC_TM_CHECK_IR = (1 << 5),<br>
 };<br>
<br>
 enum ac_float_mode {<br>
diff --git a/src/amd/vulkan/radv_shader.c b/src/amd/vulkan/radv_shader.c<br>
index 17d824c94df..7b822ff3628 100644<br>
--- a/src/amd/vulkan/radv_shader.c<br>
+++ b/src/amd/vulkan/radv_shader.c<br>
@@ -562,10 +562,12 @@ shader_variant_create(struct radv_device *device,<br>
                tm_options |= AC_TM_SUPPORTS_SPILL;<br>
        if (device->instance->perftest_flags & RADV_PERFTEST_SISCHED)<br>
                tm_options |= AC_TM_SISCHED;<br>
+       if (options->check_ir)<br>
+               tm_options |= AC_TM_CHECK_IR;<br>
<br>
        radv_init_llvm_once();<br>
        tm = ac_create_target_machine(chip_family, tm_options, NULL);<br>
-       passmgr = ac_init_passmgr(NULL, options->check_ir);<br>
+       passmgr = ac_init_passmgr(NULL, tm_options & AC_TM_CHECK_IR);<br>
        if (gs_copy_shader) {<br>
                assert(shader_count == 1);<br>
                radv_compile_gs_copy_shader(tm, passmgr, *shaders, &binary,<br>
diff --git a/src/gallium/drivers/radeonsi/si_pipe.c b/src/gallium/drivers/radeonsi/si_pipe.c<br>
index 42834486bf3..91ddcf7a5ba 100644<br>
--- a/src/gallium/drivers/radeonsi/si_pipe.c<br>
+++ b/src/gallium/drivers/radeonsi/si_pipe.c<br>
@@ -111,7 +111,8 @@ static void si_init_compiler(struct si_screen *sscreen,<br>
                (sscreen->debug_flags & DBG(SI_SCHED) ? AC_TM_SISCHED : 0) |<br>
                (sscreen->info.chip_class >= GFX9 ? AC_TM_FORCE_ENABLE_XNACK : 0) |<br>
                (sscreen->info.chip_class < GFX9 ? AC_TM_FORCE_DISABLE_XNACK : 0) |<br>
-               (!sscreen->llvm_has_working_vgpr_indexing ? AC_TM_PROMOTE_ALLOCA_TO_SCRATCH : 0);<br>
+               (!sscreen->llvm_has_working_vgpr_indexing ? AC_TM_PROMOTE_ALLOCA_TO_SCRATCH : 0) |<br>
+               (sscreen->debug_flags & DBG(CHECK_IR) ? AC_TM_CHECK_IR : 0);<br>
<br>
        const char *triple;<br>
        ac_init_llvm_once();<br>
@@ -126,7 +127,7 @@ static void si_init_compiler(struct si_screen *sscreen,<br>
                return;<br>
<br>
        compiler->passmgr = ac_init_passmgr(compiler->target_library_info,<br>
-                                           (sscreen->debug_flags & DBG(CHECK_IR)));<br>
+                                           tm_options & AC_TM_CHECK_IR);<br>
        if (!compiler->passmgr)<br>
                return;<br>
 }<br>
-- <br>
2.17.1<br>
<br>
_______________________________________________<br>
mesa-dev mailing list<br>
<a href="mailto:mesa-dev@lists.freedesktop.org" target="_blank" rel="noreferrer">mesa-dev@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/mesa-dev" rel="noreferrer noreferrer" target="_blank">https://lists.freedesktop.org/mailman/listinfo/mesa-dev</a><br>
</blockquote></div>