i965: Add a weak no-op nir_print_instr() symbol
authorMatt Turner <mattst88@gmail.com>
Mon, 1 May 2017 18:43:07 +0000 (11:43 -0700)
committerMatt Turner <mattst88@gmail.com>
Mon, 15 May 2017 18:43:01 +0000 (11:43 -0700)
intel_asm_annotation.c is part of libintel_compiler.la, which contains
code for disassembling and validating shaders that we want to call in
aubinator_error_decode.

dump_assembly() calls nir_print_instr() to print annotations, and
although dump_assembly() is not called by aubinator_error_decode (nor is
any function in intel_asm_annotation.c) it causes undefined references
to nir_print_instr().

To work around, provide a no-op weak symbol to resolve against.

src/intel/compiler/intel_asm_annotation.c

index 1f3b78476e3070b45e0596b407436d6c743905c7..b07a545a12ef28d11a9f65fa67c20c42dff3d765 100644 (file)
@@ -27,6 +27,8 @@
 #include "intel_asm_annotation.h"
 #include "compiler/nir/nir.h"
 
+__attribute__((weak)) void nir_print_instr(const nir_instr *instr, FILE *fp) {}
+
 void
 dump_assembly(void *assembly, int num_annotations, struct annotation *annotation,
               const struct gen_device_info *devinfo)