radeonsi: rename si_compiler -> ac_llvm_compiler
authorDave Airlie <airlied@redhat.com>
Mon, 2 Jul 2018 23:39:27 +0000 (09:39 +1000)
committerDave Airlie <airlied@redhat.com>
Tue, 3 Jul 2018 19:31:32 +0000 (05:31 +1000)
As precursor to moving init to common code, just rename the struct
and move it.

Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
src/amd/common/ac_llvm_util.h
src/gallium/drivers/radeonsi/si_compute.c
src/gallium/drivers/radeonsi/si_pipe.c
src/gallium/drivers/radeonsi/si_pipe.h
src/gallium/drivers/radeonsi/si_shader.c
src/gallium/drivers/radeonsi/si_shader.h
src/gallium/drivers/radeonsi/si_shader_internal.h
src/gallium/drivers/radeonsi/si_shader_tgsi_setup.c
src/gallium/drivers/radeonsi/si_state_shaders.c

index 1175971e2577f9c78094872768cf44cd39e19639..0ba708356788d863788d6c10830130a339ebdd6e 100644 (file)
@@ -67,6 +67,13 @@ enum ac_float_mode {
        AC_FLOAT_MODE_UNSAFE_FP_MATH,
 };
 
+/* Per-thread persistent LLVM objects. */
+struct ac_llvm_compiler {
+       LLVMTargetMachineRef            tm;
+       LLVMTargetLibraryInfoRef        target_library_info;
+       LLVMPassManagerRef              passmgr;
+};
+
 const char *ac_get_llvm_processor_name(enum radeon_family family);
 LLVMTargetMachineRef ac_create_target_machine(enum radeon_family family,
                                              enum ac_target_machine_options tm_options,
index 5a58fe4ac4f73b05608ab35038615edb7b53623e..5d3341ff61eae10d7c7eabb8d57bc4c0d5be4973 100644 (file)
@@ -86,7 +86,7 @@ static void si_create_compute_state_async(void *job, int thread_index)
        struct si_compute *program = (struct si_compute *)job;
        struct si_shader *shader = &program->shader;
        struct si_shader_selector sel;
-       struct si_compiler *compiler;
+       struct ac_llvm_compiler *compiler;
        struct pipe_debug_callback *debug = &program->compiler_ctx_state.debug;
        struct si_screen *sscreen = program->screen;
 
index 0f58286fed126b2fc3dd0f0917bfa2ed4b445b12..f4bed98e841c3530d87b9ab7cc0547d4269d6e6f 100644 (file)
@@ -105,7 +105,7 @@ static const struct debug_named_value debug_options[] = {
 };
 
 static void si_init_compiler(struct si_screen *sscreen,
-                            struct si_compiler *compiler)
+                            struct ac_llvm_compiler *compiler)
 {
        enum ac_target_machine_options tm_options =
                (sscreen->debug_flags & DBG(SI_SCHED) ? AC_TM_SISCHED : 0) |
@@ -131,7 +131,7 @@ static void si_init_compiler(struct si_screen *sscreen,
                return;
 }
 
-static void si_destroy_compiler(struct si_compiler *compiler)
+static void si_destroy_compiler(struct ac_llvm_compiler *compiler)
 {
        if (compiler->passmgr)
                LLVMDisposePassManager(compiler->passmgr);
index bd857f8a349464efa91abdab5c41329f9ade0744..301c168c9527d8e4b7526ba614dc4543e108a8fb 100644 (file)
@@ -515,12 +515,12 @@ struct si_screen {
        /* Use at most 3 normal compiler threads on quadcore and better.
         * Hyperthreaded CPUs report the number of threads, but we want
         * the number of cores. We only need this many threads for shader-db. */
-       struct si_compiler              compiler[24]; /* used by the queue only */
+       struct ac_llvm_compiler         compiler[24]; /* used by the queue only */
 
        struct util_queue               shader_compiler_queue_low_priority;
        /* Use at most 2 low priority threads on quadcore and better.
         * We want to minimize the impact on multithreaded Mesa. */
-       struct si_compiler              compiler_lowp[10];
+       struct ac_llvm_compiler         compiler_lowp[10];
 };
 
 struct si_blend_color {
@@ -762,7 +762,7 @@ struct si_context {
        void                            *vs_blit_texcoord;
        struct si_screen                *screen;
        struct pipe_debug_callback      debug;
-       struct si_compiler              compiler; /* only non-threaded compilation */
+       struct ac_llvm_compiler         compiler; /* only non-threaded compilation */
        struct si_shader_ctx_state      fixed_func_tcs_shader;
        struct r600_resource            *wait_mem_scratch;
        unsigned                        wait_mem_number;
index 32db089ed2c1ffd99069b8a60e368f31587c7270..5dc12d87243631c4f8e667c85aa817c60924919a 100644 (file)
@@ -69,7 +69,7 @@ enum si_arg_regfile {
 
 static void si_init_shader_ctx(struct si_shader_context *ctx,
                               struct si_screen *sscreen,
-                              struct si_compiler *compiler);
+                              struct ac_llvm_compiler *compiler);
 
 static void si_llvm_emit_barrier(const struct lp_build_tgsi_action *action,
                                 struct lp_build_tgsi_context *bld_base,
@@ -5641,7 +5641,7 @@ void si_shader_dump(struct si_screen *sscreen, const struct si_shader *shader,
 static int si_compile_llvm(struct si_screen *sscreen,
                           struct ac_shader_binary *binary,
                           struct si_shader_config *conf,
-                          struct si_compiler *compiler,
+                          struct ac_llvm_compiler *compiler,
                           LLVMModuleRef mod,
                           struct pipe_debug_callback *debug,
                           unsigned processor,
@@ -5719,7 +5719,7 @@ static void si_llvm_build_ret(struct si_shader_context *ctx, LLVMValueRef ret)
 /* Generate code for the hardware VS shader stage to go with a geometry shader */
 struct si_shader *
 si_generate_gs_copy_shader(struct si_screen *sscreen,
-                          struct si_compiler *compiler,
+                          struct ac_llvm_compiler *compiler,
                           struct si_shader_selector *gs_selector,
                           struct pipe_debug_callback *debug)
 {
@@ -6001,7 +6001,7 @@ static void si_dump_shader_key(unsigned processor, const struct si_shader *shade
 
 static void si_init_shader_ctx(struct si_shader_context *ctx,
                               struct si_screen *sscreen,
-                              struct si_compiler *compiler)
+                              struct ac_llvm_compiler *compiler)
 {
        struct lp_build_tgsi_context *bld_base;
 
@@ -6791,7 +6791,7 @@ static void si_build_wrapper_function(struct si_shader_context *ctx,
 }
 
 int si_compile_tgsi_shader(struct si_screen *sscreen,
-                          struct si_compiler *compiler,
+                          struct ac_llvm_compiler *compiler,
                           struct si_shader *shader,
                           struct pipe_debug_callback *debug)
 {
@@ -7132,7 +7132,7 @@ si_get_shader_part(struct si_screen *sscreen,
                   enum pipe_shader_type type,
                   bool prolog,
                   union si_shader_part_key *key,
-                  struct si_compiler *compiler,
+                  struct ac_llvm_compiler *compiler,
                   struct pipe_debug_callback *debug,
                   void (*build)(struct si_shader_context *,
                                 union si_shader_part_key *),
@@ -7378,7 +7378,7 @@ static void si_build_vs_prolog_function(struct si_shader_context *ctx,
 }
 
 static bool si_get_vs_prolog(struct si_screen *sscreen,
-                            struct si_compiler *compiler,
+                            struct ac_llvm_compiler *compiler,
                             struct si_shader *shader,
                             struct pipe_debug_callback *debug,
                             struct si_shader *main_part,
@@ -7406,7 +7406,7 @@ static bool si_get_vs_prolog(struct si_screen *sscreen,
  * Select and compile (or reuse) vertex shader parts (prolog & epilog).
  */
 static bool si_shader_select_vs_parts(struct si_screen *sscreen,
-                                     struct si_compiler *compiler,
+                                     struct ac_llvm_compiler *compiler,
                                      struct si_shader *shader,
                                      struct pipe_debug_callback *debug)
 {
@@ -7495,7 +7495,7 @@ static void si_build_tcs_epilog_function(struct si_shader_context *ctx,
  * Select and compile (or reuse) TCS parts (epilog).
  */
 static bool si_shader_select_tcs_parts(struct si_screen *sscreen,
-                                      struct si_compiler *compiler,
+                                      struct ac_llvm_compiler *compiler,
                                       struct si_shader *shader,
                                       struct pipe_debug_callback *debug)
 {
@@ -7527,7 +7527,7 @@ static bool si_shader_select_tcs_parts(struct si_screen *sscreen,
  * Select and compile (or reuse) GS parts (prolog).
  */
 static bool si_shader_select_gs_parts(struct si_screen *sscreen,
-                                     struct si_compiler *compiler,
+                                     struct ac_llvm_compiler *compiler,
                                      struct si_shader *shader,
                                      struct pipe_debug_callback *debug)
 {
@@ -7940,7 +7940,7 @@ static void si_build_ps_epilog_function(struct si_shader_context *ctx,
  * Select and compile (or reuse) pixel shader parts (prolog & epilog).
  */
 static bool si_shader_select_ps_parts(struct si_screen *sscreen,
-                                     struct si_compiler *compiler,
+                                     struct ac_llvm_compiler *compiler,
                                      struct si_shader *shader,
                                      struct pipe_debug_callback *debug)
 {
@@ -8071,7 +8071,7 @@ static void si_fix_resource_usage(struct si_screen *sscreen,
        }
 }
 
-int si_shader_create(struct si_screen *sscreen, struct si_compiler *compiler,
+int si_shader_create(struct si_screen *sscreen, struct ac_llvm_compiler *compiler,
                     struct si_shader *shader,
                     struct pipe_debug_callback *debug)
 {
index 6b71b399437e9d5baaff7a7aec8c1879239369b5..ffe13b761d9981fe310f982e4570a25a1817b9a1 100644 (file)
 
 #include "ac_binary.h"
 #include "ac_llvm_build.h"
+#include "ac_llvm_util.h"
 
 #include <stdio.h>
 
@@ -317,18 +318,11 @@ enum {
 
 struct si_shader;
 
-/* Per-thread persistent LLVM objects. */
-struct si_compiler {
-       LLVMTargetMachineRef            tm;
-       LLVMTargetLibraryInfoRef        target_library_info;
-       LLVMPassManagerRef              passmgr;
-};
-
 /* State of the context creating the shader object. */
 struct si_compiler_ctx_state {
        /* Should only be used by si_init_shader_selector_async and
         * si_build_shader_variant if thread_index == -1 (non-threaded). */
-       struct si_compiler              *compiler;
+       struct ac_llvm_compiler         *compiler;
 
        /* Used if thread_index == -1 or if debug.async is true. */
        struct pipe_debug_callback      debug;
@@ -657,14 +651,14 @@ struct si_shader_part {
 /* si_shader.c */
 struct si_shader *
 si_generate_gs_copy_shader(struct si_screen *sscreen,
-                          struct si_compiler *compiler,
+                          struct ac_llvm_compiler *compiler,
                           struct si_shader_selector *gs_selector,
                           struct pipe_debug_callback *debug);
 int si_compile_tgsi_shader(struct si_screen *sscreen,
-                          struct si_compiler *compiler,
+                          struct ac_llvm_compiler *compiler,
                           struct si_shader *shader,
                           struct pipe_debug_callback *debug);
-int si_shader_create(struct si_screen *sscreen, struct si_compiler *compiler,
+int si_shader_create(struct si_screen *sscreen, struct ac_llvm_compiler *compiler,
                     struct si_shader *shader,
                     struct pipe_debug_callback *debug);
 void si_shader_destroy(struct si_shader *shader);
index 5c275ab6d9f2f380b3d32841ad66129c680937e3..21e325c2d82666390c6b8bf5b1edf2cbb1bf9934 100644 (file)
@@ -174,7 +174,7 @@ struct si_shader_context {
        /* CS */
        int param_block_size;
 
-       struct si_compiler *compiler;
+       struct ac_llvm_compiler *compiler;
 
        /* Preloaded descriptors. */
        LLVMValueRef esgs_ring;
@@ -216,7 +216,7 @@ si_shader_context_from_abi(struct ac_shader_abi *abi)
 }
 
 unsigned si_llvm_compile(LLVMModuleRef M, struct ac_shader_binary *binary,
-                        struct si_compiler *compiler,
+                        struct ac_llvm_compiler *compiler,
                         struct pipe_debug_callback *debug);
 
 LLVMTypeRef tgsi2llvmtype(struct lp_build_tgsi_context *bld_base,
@@ -231,7 +231,7 @@ LLVMValueRef si_llvm_bound_index(struct si_shader_context *ctx,
 
 void si_llvm_context_init(struct si_shader_context *ctx,
                          struct si_screen *sscreen,
-                         struct si_compiler *compiler);
+                         struct ac_llvm_compiler *compiler);
 void si_llvm_context_set_tgsi(struct si_shader_context *ctx,
                              struct si_shader *shader);
 
index 2581d14e76040c9bb419f79c5af2f73ca4e7f7d4..566d3a8eb6e590fd98c2c76d8030a6742584c019 100644 (file)
@@ -81,7 +81,7 @@ static void si_diagnostic_handler(LLVMDiagnosticInfoRef di, void *context)
  * @returns 0 for success, 1 for failure
  */
 unsigned si_llvm_compile(LLVMModuleRef M, struct ac_shader_binary *binary,
-                        struct si_compiler *compiler,
+                        struct ac_llvm_compiler *compiler,
                         struct pipe_debug_callback *debug)
 {
        struct si_llvm_diagnostics diag;
@@ -972,7 +972,7 @@ static void emit_immediate(struct lp_build_tgsi_context *bld_base,
 
 void si_llvm_context_init(struct si_shader_context *ctx,
                          struct si_screen *sscreen,
-                         struct si_compiler *compiler)
+                         struct ac_llvm_compiler *compiler)
 {
        struct lp_type type;
 
index ddd38dabbe670e6d246f77af1a8a8407816b6510..ffc8821df09c395b8a8610a52e401144c08ad462 100644 (file)
@@ -1509,7 +1509,7 @@ static void si_build_shader_variant(struct si_shader *shader,
 {
        struct si_shader_selector *sel = shader->selector;
        struct si_screen *sscreen = sel->screen;
-       struct si_compiler *compiler;
+       struct ac_llvm_compiler *compiler;
        struct pipe_debug_callback *debug = &shader->compiler_ctx_state.debug;
        int r;
 
@@ -1856,7 +1856,7 @@ static void si_init_shader_selector_async(void *job, int thread_index)
 {
        struct si_shader_selector *sel = (struct si_shader_selector *)job;
        struct si_screen *sscreen = sel->screen;
-       struct si_compiler *compiler;
+       struct ac_llvm_compiler *compiler;
        struct pipe_debug_callback *debug = &sel->compiler_ctx_state.debug;
 
        assert(!debug->debug_message || debug->async);