https://bugs.freedesktop.org/show_bug.cgi?id=86760
Bug ID: 86760 Summary: mesa 07ae697... doesn't build: recipe for target 'r600_llvm.lo' failed Product: Mesa Version: git Hardware: x86-64 (AMD64) OS: Linux (All) Status: NEW Severity: normal Priority: medium Component: Drivers/Gallium/r600 Assignee: dri-devel@lists.freedesktop.org Reporter: wolput@onsneteindhoven.nl
Build failure in mesa 07ae697... (r600g: merge the TXQ and BUFFER constant buffers, committer Dave Airlie) make ends with the following error: ----- CC r600_llvm.lo r600_llvm.c: In function 'llvm_emit_tex': r600_llvm.c:26:61: error: 'R600_TXQ_CONST_BUFFER' undeclared (first use in this function) #define CONSTANT_TXQ_BUFFER (CONSTANT_BUFFER_0_ADDR_SPACE + R600_TXQ_CONST_BUFFER) ^ r600_llvm.c:693:46: note: in expansion of macro 'CONSTANT_TXQ_BUFFER' llvm_load_const_buffer(bld_base, offset, CONSTANT_TXQ_BUFFER), ^ r600_llvm.c:26:61: note: each undeclared identifier is reported only once for each function it appears in #define CONSTANT_TXQ_BUFFER (CONSTANT_BUFFER_0_ADDR_SPACE + R600_TXQ_CONST_BUFFER) ^ r600_llvm.c:693:46: note: in expansion of macro 'CONSTANT_TXQ_BUFFER' llvm_load_const_buffer(bld_base, offset, CONSTANT_TXQ_BUFFER), ^ Makefile:813: recipe for target 'r600_llvm.lo' failed make[3]: *** [r600_llvm.lo] Error 1 -----
https://bugs.freedesktop.org/show_bug.cgi?id=86760
--- Comment #1 from Alexandre Demers alexandre.f.demers@gmail.com --- Dave, compared to your original patch (http://patchwork.freedesktop.org/patch/37363/), it seems the changes in src/gallium/drivers/r600/r600_llvm.c are missing in the commit.
https://bugs.freedesktop.org/show_bug.cgi?id=86760
--- Comment #2 from Dave Airlie airlied@freedesktop.org --- oops pushing fix now.
https://bugs.freedesktop.org/show_bug.cgi?id=86760
Dave Airlie airlied@freedesktop.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |FIXED
https://bugs.freedesktop.org/show_bug.cgi?id=86760
Jos van Wolput wolput@onsneteindhoven.nl changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED Resolution|FIXED |--- Summary|mesa 07ae697... doesn't |mesa doesn't build: recipe |build: recipe for target |for target 'r600_llvm.lo' |'r600_llvm.lo' failed |failed
--- Comment #3 from Jos van Wolput wolput@onsneteindhoven.nl --- (In reply to Dave Airlie from comment #2)
oops pushing fix now.
Dave, it still doesn't build after your fix! Now getting the following error (after make clean): make ----- CC r600_llvm.lo r600_llvm.c: In function 'llvm_emit_tex': r600_llvm.c:692:5: error: too many arguments to function 'llvm_load_const_buffer' llvm_load_const_buffer(bld_base, offset, LLVM_R600_BUFFER_INFO_CONST_BUFFER, ^ r600_llvm.c:29:21: note: declared here static LLVMValueRef llvm_load_const_buffer( ^ r600_llvm.c:693:42: error: expected ')' before ';' token lp_build_const_int32(gallivm, 0), ""); ^ r600_llvm.c:691:26: error: too few arguments to function 'LLVMBuildExtractElement' LLVMValueRef ZLayer = LLVMBuildExtractElement(gallivm->builder, ^ In file included from ../../../../src/gallium/drivers/radeon/radeon_llvm.h:30:0, from r600_llvm.h:7, from r600_llvm.c:1: /usr/lib/llvm-3.5/include/llvm-c/Core.h:2700:14: note: declared here LLVMValueRef LLVMBuildExtractElement(LLVMBuilderRef, LLVMValueRef VecVal, ^ r600_llvm.c:698:3: error: expected ',' or ';' before '}' token } CC r600_llvm.lo r600_llvm.c: In function 'llvm_emit_tex': r600_llvm.c:692:5: error: too many arguments to function 'llvm_load_const_buffer' llvm_load_const_buffer(bld_base, offset, LLVM_R600_BUFFER_INFO_CONST_BUFFER, ^ r600_llvm.c:29:21: note: declared here static LLVMValueRef llvm_load_const_buffer( ^ r600_llvm.c:693:42: error: expected ')' before ';' token lp_build_const_int32(gallivm, 0), ""); ^ r600_llvm.c:691:26: error: too few arguments to function 'LLVMBuildExtractElement' LLVMValueRef ZLayer = LLVMBuildExtractElement(gallivm->builder, ^ In file included from ../../../../src/gallium/drivers/radeon/radeon_llvm.h:30:0, from r600_llvm.h:7, from r600_llvm.c:1: /usr/lib/llvm-3.5/include/llvm-c/Core.h:2700:14: note: declared here LLVMValueRef LLVMBuildExtractElement(LLVMBuilderRef, LLVMValueRef VecVal, ^ r600_llvm.c:698:3: error: expected ',' or ';' before '}' token } ^ r600_llvm.c:691:17: warning: unused variable 'ZLayer' [-Wunused-variable] LLVMValueRef ZLayer = LLVMBuildExtractElement(gallivm->builder, ^ r600_llvm.c:701:13: error: invalid storage class for function 'emit_cndlt' static void emit_cndlt( ^ r600_llvm.c:715:13: error: invalid storage class for function 'dp_fetch_args' static void dp_fetch_args( ^ r600_llvm.c:752:2: error: initializer element is not constant .fetch_args = dp_fetch_args, ^ r600_llvm.c:752:2: error: (near initialization for 'dot_action.fetch_args') r600_llvm.c:892:1: error: expected declaration or statement at end of input } ^ Makefile:813: recipe for target 'r600_llvm.lo' failed make[3]: *** [r600_llvm.lo] Error 1 ^ r600_llvm.c:691:17: warning: unused variable 'ZLayer' [-Wunused-variable] LLVMValueRef ZLayer = LLVMBuildExtractElement(gallivm->builder, ^ r600_llvm.c:701:13: error: invalid storage class for function 'emit_cndlt' static void emit_cndlt( ^ r600_llvm.c:715:13: error: invalid storage class for function 'dp_fetch_args' static void dp_fetch_args( ^ r600_llvm.c:752:2: error: initializer element is not constant .fetch_args = dp_fetch_args, ^ r600_llvm.c:752:2: error: (near initialization for 'dot_action.fetch_args') r600_llvm.c:892:1: error: expected declaration or statement at end of input } ^ Makefile:813: recipe for target 'r600_llvm.lo' failed make[3]: *** [r600_llvm.lo] Error 1 -----
https://bugs.freedesktop.org/show_bug.cgi?id=86760
Dave Airlie airlied@freedesktop.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|REOPENED |RESOLVED Resolution|--- |FIXED
--- Comment #4 from Dave Airlie airlied@freedesktop.org --- this time for sure,
I don't advice using the llvm compiler backend for r600 btw.
dri-devel@lists.freedesktop.org