Module: Mesa Branch: master Commit: d9a32b84e38fda935032338a0a4ae9438d48108d URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d9a32b84e38fda935032338a0a4ae9438d48108d
Author: Tom Stellard <[email protected]> Date: Tue Apr 23 08:08:30 2013 -0700 radeon/llvm: Fix segfault with a specifc libelf implementation The libelf implementation that is distributed here: http://www.mr511.de/software/english.html requires calling elf_version() prior to calling elf_memory() Tested-by: Michel Dänzer <[email protected]> --- src/gallium/drivers/radeon/radeon_llvm_emit.cpp | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/src/gallium/drivers/radeon/radeon_llvm_emit.cpp b/src/gallium/drivers/radeon/radeon_llvm_emit.cpp index 5b770d0..55dad9b 100644 --- a/src/gallium/drivers/radeon/radeon_llvm_emit.cpp +++ b/src/gallium/drivers/radeon/radeon_llvm_emit.cpp @@ -159,6 +159,10 @@ radeon_llvm_compile(LLVMModuleRef M, struct radeon_llvm_binary *binary, char *elf_buffer; + /* One of the libelf implementations (http://www.mr511.de/software/english.htm) + * requires calling elf_version() before elf_memory(). + */ + elf_version(EV_CURRENT); elf_buffer = (char*)malloc(data.length()); memcpy(elf_buffer, data.c_str(), data.length()); _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
