configure.ac: Set and use HAVE_GALLIUM_LLVM define
authorTobias Droste <tdroste@gmx.de>
Thu, 8 Dec 2016 02:03:38 +0000 (03:03 +0100)
committerEmil Velikov <emil.l.velikov@gmail.com>
Wed, 18 Jan 2017 13:23:01 +0000 (13:23 +0000)
Gallium code used HAVE_LLVM to check if it needs to compile code for
LLVM in header and source files.

With the new logic HAVE_LLVM is always set. Use extra define to figure
out if LLVM is used.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99010

Signed-off-by: Tobias Droste <tdroste@gmx.de>
configure.ac
src/gallium/auxiliary/draw/draw_context.c
src/gallium/auxiliary/draw/draw_context.h
src/gallium/auxiliary/draw/draw_pt.c
src/gallium/auxiliary/draw/draw_vs.c
src/gallium/auxiliary/draw/draw_vs.h

index 9c9c316c4e32318ace8a697aa1e7c2e6005f9346..5740da6ee91dee9e75f87d4a0702eef5e5b75a39 100644 (file)
@@ -2573,6 +2573,7 @@ if test "x$enable_gallium_llvm" == "xyes"; then
     llvm_add_default_components "gallium"
 
     HAVE_GALLIUM_LLVM=yes
+    DEFINES="${DEFINES} -DHAVE_GALLIUM_LLVM"
 fi
 
 dnl We need to validate some needed dependencies for renderonly drivers.
index 56abcff5a248addaa4f25603ce0df64c1231952d..f0dae1b1fecb05f02bfcfe19238918c8ad90bee4 100644 (file)
@@ -45,7 +45,7 @@
 #include "draw_vs.h"
 #include "draw_gs.h"
 
-#if HAVE_LLVM
+#if HAVE_GALLIUM_LLVM
 #include "gallivm/lp_bld_init.h"
 #include "gallivm/lp_bld_limits.h"
 #include "draw_llvm.h"
@@ -78,7 +78,7 @@ draw_create_context(struct pipe_context *pipe, void *context,
    /* we need correct cpu caps for disabling denorms in draw_vbo() */
    util_cpu_detect();
 
-#if HAVE_LLVM
+#if HAVE_GALLIUM_LLVM
    if (try_llvm && draw_get_option_use_llvm()) {
       draw->llvm = draw_llvm_create(draw, (LLVMContextRef)context);
    }
@@ -112,7 +112,7 @@ draw_create(struct pipe_context *pipe)
 }
 
 
-#if HAVE_LLVM
+#if HAVE_GALLIUM_LLVM
 struct draw_context *
 draw_create_with_llvm_context(struct pipe_context *pipe,
                               void *context)
@@ -221,7 +221,7 @@ void draw_destroy( struct draw_context *draw )
    draw_pt_destroy( draw );
    draw_vs_destroy( draw );
    draw_gs_destroy( draw );
-#ifdef HAVE_LLVM
+#ifdef HAVE_GALLIUM_LLVM
    if (draw->llvm)
       draw_llvm_destroy( draw->llvm );
 #endif
@@ -1003,7 +1003,7 @@ draw_set_samplers(struct draw_context *draw,
 
    draw->num_samplers[shader_stage] = num;
 
-#ifdef HAVE_LLVM
+#ifdef HAVE_GALLIUM_LLVM
    if (draw->llvm)
       draw_llvm_set_sampler_state(draw, shader_stage);
 #endif
@@ -1020,7 +1020,7 @@ draw_set_mapped_texture(struct draw_context *draw,
                         uint32_t img_stride[PIPE_MAX_TEXTURE_LEVELS],
                         uint32_t mip_offsets[PIPE_MAX_TEXTURE_LEVELS])
 {
-#ifdef HAVE_LLVM
+#ifdef HAVE_GALLIUM_LLVM
    if (draw->llvm)
       draw_llvm_set_mapped_texture(draw,
                                    shader_stage,
@@ -1057,7 +1057,7 @@ int
 draw_get_shader_param(unsigned shader, enum pipe_shader_cap param)
 {
 
-#ifdef HAVE_LLVM
+#ifdef HAVE_GALLIUM_LLVM
    if (draw_get_option_use_llvm()) {
       switch(shader) {
       case PIPE_SHADER_VERTEX:
index 145fc2ed467bba4de79d98a367972d90e879221b..782dec2dde33a41a59a304735d0ce0afd6dbe8c4 100644 (file)
@@ -65,7 +65,7 @@ struct draw_so_target {
 
 struct draw_context *draw_create( struct pipe_context *pipe );
 
-#if HAVE_LLVM
+#if HAVE_GALLIUM_LLVM
 struct draw_context *draw_create_with_llvm_context(struct pipe_context *pipe,
                                                    void *context);
 #endif
index 5a49acb64d3f69e23e6aea2b9d94fd3663686b79..1be983f56a3e2871585c3bf99bfdfa7edb1e44c0 100644 (file)
@@ -191,7 +191,7 @@ boolean draw_pt_init( struct draw_context *draw )
    if (!draw->pt.middle.general)
       return FALSE;
 
-#if HAVE_LLVM
+#if HAVE_GALLIUM_LLVM
    if (draw->llvm)
       draw->pt.middle.llvm = draw_pt_fetch_pipeline_or_emit_llvm( draw );
 #endif
@@ -519,7 +519,7 @@ draw_vbo(struct draw_context *draw,
                                      draw->pt.vertex_element,
                                      draw->pt.nr_vertex_elements,
                                      info);
-#if HAVE_LLVM
+#if HAVE_GALLIUM_LLVM
    if (!draw->llvm)
 #endif
    {
index 415c4fa949aacb6d9080ce2782e952994d7bea36..e9966cf725ebbf1d42cc40f28fb82967c369e100 100644 (file)
@@ -59,7 +59,7 @@ draw_create_vertex_shader(struct draw_context *draw,
       tgsi_dump(shader->tokens, 0);
    }
 
-#if HAVE_LLVM
+#if HAVE_GALLIUM_LLVM
    if (draw->pt.middle.llvm) {
       vs = draw_create_vs_llvm(draw, shader);
    }
index 6a900224c110d006ba927b780cdf1df0fe318f5d..7b9fd4fac7b4ad6c0f57c411dc43b39ec0881eef 100644 (file)
@@ -163,7 +163,7 @@ draw_create_vs_exec(struct draw_context *draw,
 struct draw_vs_variant_key;
 struct draw_vertex_shader;
 
-#if HAVE_LLVM
+#if HAVE_GALLIUM_LLVM
 struct draw_vertex_shader *
 draw_create_vs_llvm(struct draw_context *draw,
                    const struct pipe_shader_state *state);