radeonsi: Cache LLVMTargetMachine object in si_screen
authorTom Stellard <thomas.stellard@amd.com>
Wed, 15 Oct 2014 16:24:30 +0000 (12:24 -0400)
committerTom Stellard <thomas.stellard@amd.com>
Tue, 6 Jan 2015 20:53:21 +0000 (12:53 -0800)
commit761e36b4caab4e8e09a4c2b1409a825902fc7d2c
treec8b8639b11190ebfcc43f4e22fa771f86d551bd8
parent934e41c0b31cffa4efc08f61cff2389e3149b3f3
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.
src/gallium/drivers/r600/r600_llvm.c
src/gallium/drivers/radeon/radeon_llvm_emit.c
src/gallium/drivers/radeon/radeon_llvm_emit.h
src/gallium/drivers/radeonsi/si_pipe.c
src/gallium/drivers/radeonsi/si_pipe.h
src/gallium/drivers/radeonsi/si_shader.c