summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/radeonsi/si_shader.c
diff options
context:
space:
mode:
authorTom Stellard <[email protected]>2014-10-15 12:24:30 -0400
committerTom Stellard <[email protected]>2015-01-06 12:53:21 -0800
commit761e36b4caab4e8e09a4c2b1409a825902fc7d2c (patch)
treec8b8639b11190ebfcc43f4e22fa771f86d551bd8 /src/gallium/drivers/radeonsi/si_shader.c
parent934e41c0b31cffa4efc08f61cff2389e3149b3f3 (diff)
radeonsi: Cache LLVMTargetMachine object in si_screen
Rather than building a new one every compile. This should reduce some of the overhead of compiling shaders. One consequence of this change is that we lose the MachineInstrs dumps when dumping the shaders via R600_DEBUG. The LLVM IR and assembly is still dumped, and if you still want to see the MachineInstr dump, you can run the dumped LLVM IR through llc.
Diffstat (limited to 'src/gallium/drivers/radeonsi/si_shader.c')
-rw-r--r--src/gallium/drivers/radeonsi/si_shader.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c
index ce59f0ebb66..ba42dab78bb 100644
--- a/src/gallium/drivers/radeonsi/si_shader.c
+++ b/src/gallium/drivers/radeonsi/si_shader.c
@@ -2590,7 +2590,7 @@ int si_compile_llvm(struct si_screen *sscreen, struct si_shader *shader,
shader->selector ? shader->selector->tokens : NULL);
memset(&binary, 0, sizeof(binary));
r = radeon_llvm_compile(mod, &binary,
- r600_get_llvm_processor_name(sscreen->b.family), dump);
+ r600_get_llvm_processor_name(sscreen->b.family), dump, sscreen->tm);
if (r) {
return r;