Module: Mesa
Branch: master
Commit: 4695984dbcb6b0cd325dba91927959769c89373d
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=4695984dbcb6b0cd325dba91927959769c89373d

Author: Marek Olšák <[email protected]>
Date:   Wed Jul  4 01:37:30 2018 -0400

ac: fold LLVMContext creation into ac_llvm_context_init

Reviewed-by: Dave Airlie <[email protected]>

---

 src/amd/common/ac_llvm_build.c                      |  6 +++---
 src/amd/common/ac_llvm_build.h                      |  2 +-
 src/amd/vulkan/radv_nir_to_llvm.c                   | 10 ++++------
 src/gallium/drivers/radeonsi/si_shader_tgsi_setup.c |  5 +----
 4 files changed, 9 insertions(+), 14 deletions(-)

diff --git a/src/amd/common/ac_llvm_build.c b/src/amd/common/ac_llvm_build.c
index 93ae273f90..a77c29270d 100644
--- a/src/amd/common/ac_llvm_build.c
+++ b/src/amd/common/ac_llvm_build.c
@@ -57,15 +57,15 @@ struct ac_llvm_flow {
  * The caller is responsible for initializing ctx::module and ctx::builder.
  */
 void
-ac_llvm_context_init(struct ac_llvm_context *ctx, LLVMContextRef context,
+ac_llvm_context_init(struct ac_llvm_context *ctx,
                     enum chip_class chip_class, enum radeon_family family)
 {
        LLVMValueRef args[1];
 
+       ctx->context = LLVMContextCreate();
+
        ctx->chip_class = chip_class;
        ctx->family = family;
-
-       ctx->context = context;
        ctx->module = NULL;
        ctx->builder = NULL;
 
diff --git a/src/amd/common/ac_llvm_build.h b/src/amd/common/ac_llvm_build.h
index 026955a555..4e7cbcd5fa 100644
--- a/src/amd/common/ac_llvm_build.h
+++ b/src/amd/common/ac_llvm_build.h
@@ -97,7 +97,7 @@ struct ac_llvm_context {
 };
 
 void
-ac_llvm_context_init(struct ac_llvm_context *ctx, LLVMContextRef context,
+ac_llvm_context_init(struct ac_llvm_context *ctx,
                     enum chip_class chip_class, enum radeon_family family);
 
 void
diff --git a/src/amd/vulkan/radv_nir_to_llvm.c 
b/src/amd/vulkan/radv_nir_to_llvm.c
index 45ac0854c1..15c1049302 100644
--- a/src/amd/vulkan/radv_nir_to_llvm.c
+++ b/src/amd/vulkan/radv_nir_to_llvm.c
@@ -3137,10 +3137,9 @@ LLVMModuleRef ac_translate_nir_to_llvm(struct 
ac_llvm_compiler *ac_llvm,
        unsigned i;
        ctx.options = options;
        ctx.shader_info = shader_info;
-       ctx.context = LLVMContextCreate();
 
-       ac_llvm_context_init(&ctx.ac, ctx.context, options->chip_class,
-                            options->family);
+       ac_llvm_context_init(&ctx.ac, options->chip_class, options->family);
+       ctx.context = ctx.ac.context;
        ctx.ac.module = ac_create_module(ac_llvm->tm, ctx.context);
 
        enum ac_float_mode float_mode =
@@ -3576,12 +3575,11 @@ radv_compile_gs_copy_shader(struct ac_llvm_compiler 
*ac_llvm,
                            const struct radv_nir_compiler_options *options)
 {
        struct radv_shader_context ctx = {0};
-       ctx.context = LLVMContextCreate();
        ctx.options = options;
        ctx.shader_info = shader_info;
 
-       ac_llvm_context_init(&ctx.ac, ctx.context, options->chip_class,
-                            options->family);
+       ac_llvm_context_init(&ctx.ac, options->chip_class, options->family);
+       ctx.context = ctx.ac.context;
        ctx.ac.module = ac_create_module(ac_llvm->tm, ctx.context);
 
        ctx.is_gs_copy_shader = true;
diff --git a/src/gallium/drivers/radeonsi/si_shader_tgsi_setup.c 
b/src/gallium/drivers/radeonsi/si_shader_tgsi_setup.c
index b8cfd15a67..b486be2574 100644
--- a/src/gallium/drivers/radeonsi/si_shader_tgsi_setup.c
+++ b/src/gallium/drivers/radeonsi/si_shader_tgsi_setup.c
@@ -956,10 +956,7 @@ void si_llvm_context_init(struct si_shader_context *ctx,
        ctx->screen = sscreen;
        ctx->compiler = compiler;
 
-       ctx->ac.context = LLVMContextCreate();
-       ac_llvm_context_init(&ctx->ac, ctx->ac.context,
-                            sscreen->info.chip_class, sscreen->info.family);
-
+       ac_llvm_context_init(&ctx->ac, sscreen->info.chip_class, 
sscreen->info.family);
        ctx->ac.module = ac_create_module(compiler->tm, ctx->ac.context);
 
        enum ac_float_mode float_mode =

_______________________________________________
mesa-commit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to