Created attachment 141967 [details] [review] Patch to make compile with LLVM 7 Build of d3682766f66b69ab636a2b9ca74db48fab68e024 using the attached patch to make it compile with LLVM 7. When loading X, it crashes with the backtrace: (gdb) bt #6 <signal handler called> #7 0x00007f1e48432c20 in llvm::djbHash (Buffer=..., H=0) at /usr/src/debug/llvm-7.0.0.src/include/llvm/Support/DJB.h:23 #8 llvm::StringMapImpl::LookupBucketFor (this=<optimized out>, Name=...) at /usr/src/debug/llvm-7.0.0.src/lib/Support/StringMap.cpp:84 #9 0x00007f1e486547f9 in llvm::StringMap<llvm::MDString, llvm::BumpPtrAllocatorImpl<llvm::MallocAllocator, 4096ul, 4096ul> >::try_emplace<>(llvm::StringRef) (this=0xcd3be8, Key=...) at /usr/src/debug/llvm-7.0.0.src/include/llvm/ADT/StringMap.h:396 #10 0x00007f1e4864a271 in llvm::MDString::get (Context=..., Str=...) at /usr/src/debug/llvm-7.0.0.src/lib/IR/Metadata.cpp:456 #11 0x00007f1e485c9bc6 in llvm::DINode::getCanonicalMDString (Context=..., S=...) at /usr/src/debug/llvm-7.0.0.src/include/llvm/IR/DebugInfoMetadata.h:181 #12 llvm::DIFile::getImpl (Context=..., Filename=..., Directory=..., CS=..., Source=..., Storage=<optimized out>, ShouldCreate=true) at /usr/src/debug/llvm-7.0.0.src/include/llvm/IR/DebugInfoMetadata.h:556 #13 0x00007f1e485c5e32 in llvm::DIFile::get (Context=..., Filename=..., Directory=..., CS=..., Source=...) at /usr/src/debug/llvm-7.0.0.src/include/llvm/IR/DebugInfoMetadata.h:571 #14 llvm::DIBuilder::createFile (this=<optimized out>, this@entry=0x7ffd876022a0, Filename=..., Directory=..., CS=..., Source=...) at /usr/src/debug/llvm-7.0.0.src/lib/IR/DIBuilder.cpp:215 #15 0x00007f1e4b41be11 in SwrJit::Gen_SWR_VERTEX_BUFFER_STATE (pJitMgr=0xcd6e10) at /usr/include/llvm/ADT/StringRef.h:85 #16 SwrJit::Gen_SWR_FETCH_CONTEXT (pJitMgr=0xcd6e10) at rasterizer/jitter/gen_state_llvm.h:903 #17 0x00007f1e4b41ecd3 in JitManager::JitManager (this=0xcd6e10, simdWidth=<optimized out>, arch=<optimized out>, core=<optimized out>) at rasterizer/jitter/JitManager.cpp:169 #18 0x00007f1e4b41fb0e in JitCreateContext (targetSimdWidth=targetSimdWidth@entry=8, arch=arch@entry=0x7f1e4bb3dec9 "", core=core@entry=0x7f1e4ba2d0f7 "swr") at rasterizer/jitter/JitManager.cpp:507 #19 0x00007f1e4b3ce063 in swr_create_screen_internal (winsys=winsys@entry=0xcd19b0) at swr_screen.cpp:1184 #20 0x00007f1e4b431692 in swr_create_screen (winsys=winsys@entry=0xcd19b0) at swr_loader.cpp:74 #21 0x00007f1e4a9639f8 in sw_screen_create_named (driver=0x7f1e4ba2d0f7 "swr", winsys=0xcd19b0) at ../../../../src/gallium/auxiliary/target-helpers/sw_helper.h:39 #22 sw_screen_create (winsys=0xcd19b0) at ../../../../src/gallium/auxiliary/target-helpers/sw_helper.h:81 #23 0x00007f1e4b0bc316 in pipe_loader_sw_create_screen (dev=0xcd1940, config=<optimized out>) at pipe_loader_sw.c:310 #24 0x00007f1e4b0bc12c in pipe_loader_create_screen (dev=0xcd1940) at pipe_loader.c:137 #25 0x00007f1e4ae8b58c in dri_kms_init_screen (sPriv=0xccfc90) at dri2.c:2208 #26 0x00007f1e4ae86923 in driCreateNewScreen2 (scrn=0, fd=13, extensions=<optimized out>, driver_extensions=<optimized out>, driver_configs=0xc7af58, data=0xc7ad90) at dri_util.c:153 #27 0x00007f1e4c0de30e in dri_screen_create_dri2 (dri=dri@entry=0xc7ad90, driver_name=<optimized out>) at backends/dri/gbm_dri.c:461 #28 0x00007f1e4c0de3ca in dri_screen_create_sw (dri=0xc7ad90) at backends/dri/gbm_dri.c:549 #29 0x00007f1e4c0de6d8 in dri_device_create (fd=13) at backends/dri/gbm_dri.c:1447 #30 0x00007f1e4c0dbbce in gbm_create_device (fd=13) at main/gbm.c:137 #7 0x00007f1e48432c20 in llvm::djbHash (Buffer=..., H=0) at /usr/src/debug/llvm-7.0.0.src/include/llvm/Support/DJB.h:23 23 for (unsigned char C : Buffer.bytes()) Crashed on: 0x00007f1e48432c20 <+192>: movzbl (%rcx),%edi %rcx is 0x3000000002 Buffer is: $5 = {Data = 0x3000000002 <error: Cannot access memory at address 0x3000000002>, Length = 140726874677440} Confirming on frame 14: #14 llvm::DIBuilder::createFile (this=<optimized out>, this@entry=0x7ffd876022a0, Filename=..., Directory=..., CS=..., Source=...) at /usr/src/debug/llvm-7.0.0.src/lib/IR/DIBuilder.cpp:215 215 return DIFile::get(VMContext, Filename, Directory, CS, Source); (gdb) x/2ga &Source 0x7ffd87602020: 0x3000000002 0x7ffd876020c0 Unfortunately, frame 15 (the first SWR one) is not debuggable due to the inlining of StringRef inside the function and I can't find "Gen_SWR_VERTEX_BUFFER_STATE" in the Mesa sources.
If it helps: (gdb) p *pJitMgr $28 = {mContext = {<llvm::LLVMContext> = {pImpl = 0xcd3af0}, <No data fields>}, mBuilder = {<llvm::IRBuilderBase> = {CurDbgLocation = {Loc = { Ref = {MD = 0x0}}}, BB = 0x0, InsertPt = {<llvm::ilist_detail::SpecificNodeAccess<llvm::ilist_detail::node_options<llvm::Instruction, false, false, void> >> = {<llvm::ilist_detail::NodeAccess> = {<No data fields>}, <No data fields>}, NodePtr = 0x0}, Context = @0xcd6e10, DefaultFPMathTag = 0x0, FMF = { Flags = 0}, DefaultOperandBundles = {Data = 0x0, Length = 0}}, <llvm::IRBuilderDefaultInserter> = {<No data fields>}, Folder = {<No data fields>}}, mpExec = 0xcdbd20, mCache = {<llvm::ObjectCache> = { _vptr$ObjectCache = 0x7f1e4bd63938 <vtable for JitCache+16>}, mCpu = { _M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p = 0xcd6e80 ""}, _M_string_length = 0, {_M_local_buf = "\000ellaneous\"/>\n<d", _M_allocated_capacity = 8026943275567703296}}, mCacheDir = {<llvm::SmallVector<char, 4096>> = {<llvm::SmallVectorImpl<char>> = {<llvm::SmallVectorTemplateBase<char, true>> = {<llvm::SmallVectorTemplateCommon<char, void>> = {<llvm::SmallVectorBase> = {BeginX = 0xcd6ea0, Size = 19, Capacity = 4096}, <No data fields>}, <No data fields>}, <No data fields>}, <llvm::SmallVectorStorage<char, 4096>> = { InlineElts = {{<llvm::AlignedCharArray<1, 1>> = {buffer = "/"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "r"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "o"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "o"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "t"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "/"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "."}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "s"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "w"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "r"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "/"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "j"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "i"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "t"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "c"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "a"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "c"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "h"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "e"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "n"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "e"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "o"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "s"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "\""}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "/"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = ">"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "\n"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "<"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "d"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "e"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "s"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "c"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "r"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "i"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "p"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "t"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "i"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "o"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "n"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = " "}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "l"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "a"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "n"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "g"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "="}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "\""}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "n"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "l"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "\""}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = " "}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "t"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "e"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "x"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "t"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "="}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "\""}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "M"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "i"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "s"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "c"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "e"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "l"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "l"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "a"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "n"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "e"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "o"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "u"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "s"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "\""}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "/"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = ">"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "\n"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "<"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "d"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "e"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "s"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "c"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "r"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "i"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "p"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "t"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "i"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "o"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "n"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = " "}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "l"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "a"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "n"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "g"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "="}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "\""}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "f"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "r"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "\""}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = " "}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "t"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "e"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "x"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "t"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "="}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "\""}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "M"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "i"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "s"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "c"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "e"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "l"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "l"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "a"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "n"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "e"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "o"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "u"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "s"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "\""}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "/"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = ">"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "\n"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "<"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "d"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "e"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "s"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "c"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "r"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "i"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "p"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "t"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "i"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "o"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "n"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = " "}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "l"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "a"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "n"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "g"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "="}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "\""}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "s"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "v"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "\""}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = " "}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "t"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "e"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "x"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "t"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "="}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "\""}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "M"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "i"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "s"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "c"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "e"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "l"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "l"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "a"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "n"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "e"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "o"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "u"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "s"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "\""}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "/"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = ">"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "\n"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "<"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "o"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "p"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "t"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "i"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "o"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "n"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = " "}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "n"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "a"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "m"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "e"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "="}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "\""}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "a"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "l"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "w"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "a"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "y"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "s"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "_"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "h"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "a"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "v"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "e"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "_"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "d"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "e"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "p"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "t"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "h"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "_"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "b"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = {buffer = "u"}, <No data fields>}, {<llvm::AlignedCharArray<1, 1>> = { buffer = "f"}, <No data fields>}...}}, <No data fields>}, <No data fields>}, mCurrentModuleCRC = 0, mpJitMgr = 0x0, mOptLevel = llvm::CodeGenOpt::None}, mpCurrentModule = 0xcd9050, mIsModuleFinalized = true, mJitNumber = 0, mVWidth = 8, mUsingAVX512 = false, mFetchShaderTy = 0x0, mArch = {<InstructionSet> = {CPU_Rep = {nIds_ = 13, nExIds_ = 2147483656, vendor_ = { _M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p = 0xcd7ef0 "GenuineIntel"}, _M_string_length = 12, {_M_local_buf = "GenuineIntel\000\000\000", _M_allocated_capacity = 5288754736637306183}}, brand_ = { _M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p = 0xcd9010 "Intel(R) Core(TM) i7-4700MQ CPU @ 2.40GHz"}, _M_string_length = 41, { _M_local_buf = ")", '\000' <repeats 14 times>, _M_allocated_capacity = 41}}, isIntel_ = true, isAMD_ = false, f_1_ECX_ = {<std::_Base_bitset<1>> = {_M_w = 4294586915}, <No data fields>}, f_1_EDX_ = {<std::_Base_bitset<1>> = { _M_w = 529267711}, <No data fields>}, f_7_EBX_ = {<std::_Base_bitset<1>> = {_M_w = 1963}, <No data fields>}, f_7_ECX_ = {<std::_Base_bitset<1>> = {_M_w = 4}, <No data fields>}, f_81_ECX_ = {<std::_Base_bitset<1>> = { _M_w = 33}, <No data fields>}, f_81_EDX_ = {<std::_Base_bitset<1>> = {_M_w = 739248128}, <No data fields>}, data_ = {<std::_Vector_base<std::array<int, 4>, std::allocator<std::array<int, 4> > >> = { _M_impl = {<std::allocator<std::array<int, 4> >> = {<__gnu_cxx::new_allocator<std::array<int, 4> >> = {<No data fields>}, <No data fields>}, _M_start = 0xcadf50, _M_finish = 0xcae030, _M_end_of_storage = 0xcae050}}, <No data fields>}, extdata_ = {<std::_Vector_base<std::array<int, 4>, std::allocator<std::array<int, 4> > >> = { _M_impl = {<std::allocator<std::array<int, 4> >> = {<__gnu_cxx::new_allocator<std::array<int, 4> >> = {<No data fields>}, <No data fields>}, _M_start = 0xcd8f00, _M_finish = 0xcd8f90, _M_end_of_storage = 0xcd9000}}, <No data fields>}}}, bForceAVX = false, bForceAVX2 = false, bForceAVX512 = false, isaRequest = { _M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p = 0xcd7fa0 ""}, _M_string_length = 0, {_M_local_buf = '\000' <repeats 15 times>, _M_allocated_capacity = 0}}}, mDebugStructMap = { _M_h = {_M_buckets = 0xcd7fe0, _M_bucket_count = 1, _M_before_begin = {_M_nxt = 0x0}, _M_element_count = 0, _M_rehash_policy = {_M_max_load_factor = 1, _M_next_resize = 0}, _M_single_bucket = 0x0}}}
Hi Thiago, Thanks for the details and patch on this. Can you describe what compile error you're receiving with LLVM 7? And what configure flags you're using? We have an upcoming patch to support LLVM 7, but it has different fixes compared to the patch provided.
(In reply to Alok Hota from comment #2) > Hi Thiago, > > Thanks for the details and patch on this. Can you describe what compile > error you're receiving with LLVM 7? And what configure flags you're using? > We have an upcoming patch to support LLVM 7, but it has different fixes > compared to the patch provided. That's because I uploaded the wrong patch...
Created attachment 141969 [details] [review] Actual patch to make compile with LLVM 7
(In reply to Alok Hota from comment #2) > Hi Thiago, > > Thanks for the details and patch on this. Can you describe what compile > error you're receiving with LLVM 7? And what configure flags you're using? > We have an upcoming patch to support LLVM 7, but it has different fixes > compared to the patch provided. I created https://bugs.freedesktop.org/show_bug.cgi?id=108310 to track the need for patch.
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/mesa/mesa/issues/199.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.