On Sat, Oct 14, 2017 at 11:25 AM, Don Hinton via llvm-dev <llvm-dev at lists.llvm.org> wrote:> Hi Jack: > > Yes, I was just looking at that. Seems like TableGen wasn't done along with > the rest of llvm. I'll work up a complete patch shortly.This also broke the build for MSVC when doing a debug build (though no builder seems to be picking up the failure!). After working around a handful of link errors, I came to one that's going to require more understanding of LLVM's tablegen than I have. Error LNK2019 unresolved external symbol "public: void __cdecl `anonymous namespace'::MatchableInfo::dump(void)const " (?dump at MatchableInfo@?A0xf4f1c304@@QEBAXXZ) referenced in function "public: void __cdecl `anonymous namespace'::AsmMatcherEmitter::run(class llvm::raw_ostream &)" (?run at AsmMatcherEmitter@?A0xf4f1c304@@QEAAXAEAVraw_ostream at llvm@@@Z) llvm-tblgen D:\llvm\2017\utils\TableGen\AsmMatcherEmitter.obj 1 Since this has been broken for over a day and the fixes are nontrivial, I've reverted your commit (r315590) in r315854. Hopefully this doesn't cause you too many problems! ~Aaron> > Btw, I'm curious how this happened. Do you have a stale CMakeCache.txt by > any chance? You might check the value for LLVM_ENABLE_DUMP and see if it's > consistent. > > Again, I'll gen up a complete patch shortly -- sorry for delay, had to walk > my dog first... > > thanks... > don > > On Sat, Oct 14, 2017 at 8:06 AM, Jack Howarth > <howarth.mailing.lists at gmail.com> wrote: >> >> >> >> On Sat, Oct 14, 2017 at 10:25 AM, Don Hinton <hintonda at gmail.com> wrote: >>> >>> Hi Jack: >>> >>> Looks like I missed this one in my recent change. >>> >>> Please let me know if this solves your problem: >>> >>> $ git diff >>> diff --git a/utils/TableGen/InfoByHwMode.cpp >>> b/utils/TableGen/InfoByHwMode.cpp >>> index 7e1e1864356..8d3636432aa 100644 >>> --- a/utils/TableGen/InfoByHwMode.cpp >>> +++ b/utils/TableGen/InfoByHwMode.cpp >>> @@ -98,14 +98,16 @@ void ValueTypeByHwMode::writeToStream(raw_ostream >>> &OS) const { >>> OS << '}'; >>> } >>> >>> +#ifdef LLVM_ENABLE_DUMP >>> LLVM_DUMP_METHOD >>> void ValueTypeByHwMode::dump() const { >>> dbgs() << *this << '\n'; >>> } >>> +#endif >>> >>> ValueTypeByHwMode llvm::getValueTypeByHwMode(Record *Rec, >>> const CodeGenHwModes &CGH) >>> { >>> -#ifndef NDEBUG >>> +#ifdef LLVM_ENABLE_DUMP >>> if (!Rec->isSubClassOf("ValueType")) >>> Rec->dump(); >>> #endif >>> >>> >>> thanks... >>> don >>> >> >> The patch seems to be incomplete as it moves the failure to... >> >> [ 6%] Linking CXX executable ../../bin/llvm-tblgen >> cd /sw/src/fink.build/llvm60-6.0.0-1/build/stage1/utils/TableGen && >> /sw/bin/cmake -E cmake_link_script CMakeFiles/llvm-tblgen.dir/link.txt >> --verbose=1 >> /sw/src/fink.build/llvm60-6.0.0-1/opt-bin/ccclang++ -fno-common -fPIC >> -fvisibility-inlines-hidden -Werror=date-time >> -Werror=unguarded-availability-new -std=c++11 -Wall -W -Wno-unused-parameter >> -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic >> -Wno-long-long -Wcovered-switch-default -Wnon-virtual-dtor >> -Wdelete-non-virtual-dtor -Wstring-conversion -O3 -Wl,-search_paths_first >> -Wl,-headerpad_max_install_names -L/sw/lib -Wl,-dead_strip >> CMakeFiles/obj.llvm-tblgen.dir/AsmMatcherEmitter.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/AsmWriterEmitter.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/AsmWriterInst.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/Attributes.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/CallingConvEmitter.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/CodeEmitterGen.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/CodeGenDAGPatterns.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/CodeGenHwModes.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/CodeGenInstruction.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/CodeGenMapTable.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/CodeGenRegisters.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/CodeGenSchedule.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/CodeGenTarget.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/DAGISelEmitter.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcherEmitter.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcherGen.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcherOpt.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcher.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/DFAPacketizerEmitter.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/DisassemblerEmitter.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/FastISelEmitter.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/FixedLenDecoderEmitter.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/GlobalISelEmitter.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/InfoByHwMode.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/InstrInfoEmitter.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/IntrinsicEmitter.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/OptParserEmitter.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/PseudoLoweringEmitter.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/RegisterBankEmitter.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/RegisterInfoEmitter.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/SearchableTableEmitter.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/SubtargetEmitter.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/SubtargetFeatureInfo.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/TableGen.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/Types.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/X86DisassemblerTables.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/X86EVEX2VEXTablesEmitter.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/X86FoldTablesEmitter.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/X86ModRMFilters.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/X86RecognizableInstr.cpp.o >> CMakeFiles/obj.llvm-tblgen.dir/CTagsEmitter.cpp.o -o ../../bin/llvm-tblgen >> -Wl,-rpath, at loader_path/../lib ../../lib/libLLVMSupport.a >> ../../lib/libLLVMTableGen.a ../../lib/libLLVMSupport.a -lcurses -lz -lm >> ../../lib/libLLVMDemangle.a >> Undefined symbols for architecture x86_64: >> "llvm::SubtargetFeatureInfo::dump() const", referenced from: >> (anonymous namespace)::AsmMatcherInfo::buildInfo() in >> AsmMatcherEmitter.cpp.o >> "(anonymous namespace)::MatchableInfo::dump() const", referenced from: >> (anonymous namespace)::AsmMatcherEmitter::run(llvm::raw_ostream&) in >> AsmMatcherEmitter.cpp.o >> ld: symbol(s) not found for architecture x86_64 >> clang: error: linker command failed with exit code 1 (use -v to see >> invocation) >> make[2]: *** [bin/llvm-tblgen] Error 1 >> make[1]: *** [utils/TableGen/CMakeFiles/llvm-tblgen.dir/all] Error 2 >> make: *** [all] Error 2 >> >> Jack >> >>> >>> >>> On Sat, Oct 14, 2017 at 6:06 AM, Jack Howarth via llvm-dev >>> <llvm-dev at lists.llvm.org> wrote: >>>> >>>> Is anyone else seeing this bootstrap failure on current svn trunk? >>>> >>>> [ 6%] Linking CXX executable ../../bin/llvm-tblgen >>>> cd /sw/src/fink.build/llvm60-6.0.0-1/build/stage1/utils/TableGen && >>>> /sw/bin/cmake -E cmake_link_script CMakeFiles/llvm-tblgen.dir/link.txt >>>> --verbose=1 >>>> /sw/src/fink.build/llvm60-6.0.0-1/opt-bin/ccclang++ -fno-common -fPIC >>>> -fvisibility-inlines-hidden -Werror=date-time >>>> -Werror=unguarded-availability-new -std=c++11 -Wall -W -Wno-unused-parameter >>>> -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic >>>> -Wno-long-long -Wcovered-switch-default -Wnon-virtual-dtor >>>> -Wdelete-non-virtual-dtor -Wstring-conversion -O3 -Wl,-search_paths_first >>>> -Wl,-headerpad_max_install_names -L/sw/lib -Wl,-dead_strip >>>> CMakeFiles/obj.llvm-tblgen.dir/AsmMatcherEmitter.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/AsmWriterEmitter.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/AsmWriterInst.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/Attributes.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/CallingConvEmitter.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeEmitterGen.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeGenDAGPatterns.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeGenHwModes.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeGenInstruction.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeGenMapTable.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeGenRegisters.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeGenSchedule.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeGenTarget.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/DAGISelEmitter.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcherEmitter.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcherGen.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcherOpt.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcher.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/DFAPacketizerEmitter.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/DisassemblerEmitter.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/FastISelEmitter.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/FixedLenDecoderEmitter.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/GlobalISelEmitter.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/InfoByHwMode.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/InstrInfoEmitter.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/IntrinsicEmitter.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/OptParserEmitter.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/PseudoLoweringEmitter.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/RegisterBankEmitter.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/RegisterInfoEmitter.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/SearchableTableEmitter.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/SubtargetEmitter.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/SubtargetFeatureInfo.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/TableGen.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/Types.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/X86DisassemblerTables.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/X86EVEX2VEXTablesEmitter.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/X86FoldTablesEmitter.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/X86ModRMFilters.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/X86RecognizableInstr.cpp.o >>>> CMakeFiles/obj.llvm-tblgen.dir/CTagsEmitter.cpp.o -o ../../bin/llvm-tblgen >>>> -Wl,-rpath, at loader_path/../lib ../../lib/libLLVMSupport.a >>>> ../../lib/libLLVMTableGen.a ../../lib/libLLVMSupport.a -lcurses -lz -lm >>>> ../../lib/libLLVMDemangle.a >>>> Undefined symbols for architecture x86_64: >>>> "llvm::Record::dump() const", referenced from: >>>> llvm::getValueTypeByHwMode(llvm::Record*, llvm::CodeGenHwModes >>>> const&) in InfoByHwMode.cpp.o >>>> "llvm::SubtargetFeatureInfo::dump() const", referenced from: >>>> (anonymous namespace)::AsmMatcherInfo::buildInfo() in >>>> AsmMatcherEmitter.cpp.o >>>> "(anonymous namespace)::MatchableInfo::dump() const", referenced from: >>>> (anonymous namespace)::AsmMatcherEmitter::run(llvm::raw_ostream&) >>>> in AsmMatcherEmitter.cpp.o >>>> ld: symbol(s) not found for architecture x86_64 >>>> clang: error: linker command failed with exit code 1 (use -v to see >>>> invocation) >>>> make[2]: *** [bin/llvm-tblgen] Error 1 >>>> make[1]: *** [utils/TableGen/CMakeFiles/llvm-tblgen.dir/all] Error 2 >>>> make: *** [all] Error 2 >>>> >>>> This is on x86_64-apple-darwin16 with Xcode 9.0. >>>> Jack >>>> >>>> _______________________________________________ >>>> LLVM Developers mailing list >>>> llvm-dev at lists.llvm.org >>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >>>> >>> >> > > > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >
Thanks Aaron. I don't have a Windows system, and haven't seen any buildbot failures, so I it's difficult to come up with a patch for something I can't reproduce locally or see any actual failures. Could you send me the commands you used that uncovered the failure? thanks again... don On Sun, Oct 15, 2017 at 7:35 AM, Aaron Ballman <aaron at aaronballman.com> wrote:> On Sat, Oct 14, 2017 at 11:25 AM, Don Hinton via llvm-dev > <llvm-dev at lists.llvm.org> wrote: > > Hi Jack: > > > > Yes, I was just looking at that. Seems like TableGen wasn't done along > with > > the rest of llvm. I'll work up a complete patch shortly. > > This also broke the build for MSVC when doing a debug build (though no > builder seems to be picking up the failure!). After working around a > handful of link errors, I came to one that's going to require more > understanding of LLVM's tablegen than I have. > > Error LNK2019 unresolved external symbol "public: void __cdecl > `anonymous namespace'::MatchableInfo::dump(void)const " > (?dump at MatchableInfo@?A0xf4f1c304@@QEBAXXZ) referenced in function > "public: void __cdecl `anonymous > namespace'::AsmMatcherEmitter::run(class llvm::raw_ostream &)" > (?run at AsmMatcherEmitter@?A0xf4f1c304@@QEAAXAEAVraw_ostream at llvm@@@Z) > llvm-tblgen D:\llvm\2017\utils\TableGen\AsmMatcherEmitter.obj 1 > > Since this has been broken for over a day and the fixes are > nontrivial, I've reverted your commit (r315590) in r315854. Hopefully > this doesn't cause you too many problems! > > ~Aaron > > > > > Btw, I'm curious how this happened. Do you have a stale CMakeCache.txt > by > > any chance? You might check the value for LLVM_ENABLE_DUMP and see if > it's > > consistent. > > > > Again, I'll gen up a complete patch shortly -- sorry for delay, had to > walk > > my dog first... > > > > thanks... > > don > > > > On Sat, Oct 14, 2017 at 8:06 AM, Jack Howarth > > <howarth.mailing.lists at gmail.com> wrote: > >> > >> > >> > >> On Sat, Oct 14, 2017 at 10:25 AM, Don Hinton <hintonda at gmail.com> > wrote: > >>> > >>> Hi Jack: > >>> > >>> Looks like I missed this one in my recent change. > >>> > >>> Please let me know if this solves your problem: > >>> > >>> $ git diff > >>> diff --git a/utils/TableGen/InfoByHwMode.cpp > >>> b/utils/TableGen/InfoByHwMode.cpp > >>> index 7e1e1864356..8d3636432aa 100644 > >>> --- a/utils/TableGen/InfoByHwMode.cpp > >>> +++ b/utils/TableGen/InfoByHwMode.cpp > >>> @@ -98,14 +98,16 @@ void ValueTypeByHwMode::writeToStream(raw_ostream > >>> &OS) const { > >>> OS << '}'; > >>> } > >>> > >>> +#ifdef LLVM_ENABLE_DUMP > >>> LLVM_DUMP_METHOD > >>> void ValueTypeByHwMode::dump() const { > >>> dbgs() << *this << '\n'; > >>> } > >>> +#endif > >>> > >>> ValueTypeByHwMode llvm::getValueTypeByHwMode(Record *Rec, > >>> const CodeGenHwModes > &CGH) > >>> { > >>> -#ifndef NDEBUG > >>> +#ifdef LLVM_ENABLE_DUMP > >>> if (!Rec->isSubClassOf("ValueType")) > >>> Rec->dump(); > >>> #endif > >>> > >>> > >>> thanks... > >>> don > >>> > >> > >> The patch seems to be incomplete as it moves the failure to... > >> > >> [ 6%] Linking CXX executable ../../bin/llvm-tblgen > >> cd /sw/src/fink.build/llvm60-6.0.0-1/build/stage1/utils/TableGen && > >> /sw/bin/cmake -E cmake_link_script CMakeFiles/llvm-tblgen.dir/link.txt > >> --verbose=1 > >> /sw/src/fink.build/llvm60-6.0.0-1/opt-bin/ccclang++ -fno-common -fPIC > >> -fvisibility-inlines-hidden -Werror=date-time > >> -Werror=unguarded-availability-new -std=c++11 -Wall -W > -Wno-unused-parameter > >> -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic > >> -Wno-long-long -Wcovered-switch-default -Wnon-virtual-dtor > >> -Wdelete-non-virtual-dtor -Wstring-conversion -O3 > -Wl,-search_paths_first > >> -Wl,-headerpad_max_install_names -L/sw/lib -Wl,-dead_strip > >> CMakeFiles/obj.llvm-tblgen.dir/AsmMatcherEmitter.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/AsmWriterEmitter.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/AsmWriterInst.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/Attributes.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/CallingConvEmitter.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/CodeEmitterGen.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/CodeGenDAGPatterns.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/CodeGenHwModes.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/CodeGenInstruction.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/CodeGenMapTable.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/CodeGenRegisters.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/CodeGenSchedule.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/CodeGenTarget.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/DAGISelEmitter.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcherEmitter.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcherGen.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcherOpt.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcher.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/DFAPacketizerEmitter.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/DisassemblerEmitter.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/FastISelEmitter.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/FixedLenDecoderEmitter.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/GlobalISelEmitter.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/InfoByHwMode.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/InstrInfoEmitter.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/IntrinsicEmitter.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/OptParserEmitter.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/PseudoLoweringEmitter.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/RegisterBankEmitter.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/RegisterInfoEmitter.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/SearchableTableEmitter.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/SubtargetEmitter.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/SubtargetFeatureInfo.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/TableGen.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/Types.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/X86DisassemblerTables.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/X86EVEX2VEXTablesEmitter.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/X86FoldTablesEmitter.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/X86ModRMFilters.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/X86RecognizableInstr.cpp.o > >> CMakeFiles/obj.llvm-tblgen.dir/CTagsEmitter.cpp.o -o > ../../bin/llvm-tblgen > >> -Wl,-rpath, at loader_path/../lib ../../lib/libLLVMSupport.a > >> ../../lib/libLLVMTableGen.a ../../lib/libLLVMSupport.a -lcurses -lz -lm > >> ../../lib/libLLVMDemangle.a > >> Undefined symbols for architecture x86_64: > >> "llvm::SubtargetFeatureInfo::dump() const", referenced from: > >> (anonymous namespace)::AsmMatcherInfo::buildInfo() in > >> AsmMatcherEmitter.cpp.o > >> "(anonymous namespace)::MatchableInfo::dump() const", referenced > from: > >> (anonymous namespace)::AsmMatcherEmitter::run(llvm::raw_ostream&) > in > >> AsmMatcherEmitter.cpp.o > >> ld: symbol(s) not found for architecture x86_64 > >> clang: error: linker command failed with exit code 1 (use -v to see > >> invocation) > >> make[2]: *** [bin/llvm-tblgen] Error 1 > >> make[1]: *** [utils/TableGen/CMakeFiles/llvm-tblgen.dir/all] Error 2 > >> make: *** [all] Error 2 > >> > >> Jack > >> > >>> > >>> > >>> On Sat, Oct 14, 2017 at 6:06 AM, Jack Howarth via llvm-dev > >>> <llvm-dev at lists.llvm.org> wrote: > >>>> > >>>> Is anyone else seeing this bootstrap failure on current svn trunk? > >>>> > >>>> [ 6%] Linking CXX executable ../../bin/llvm-tblgen > >>>> cd /sw/src/fink.build/llvm60-6.0.0-1/build/stage1/utils/TableGen && > >>>> /sw/bin/cmake -E cmake_link_script CMakeFiles/llvm-tblgen.dir/ > link.txt > >>>> --verbose=1 > >>>> /sw/src/fink.build/llvm60-6.0.0-1/opt-bin/ccclang++ -fno-common > -fPIC > >>>> -fvisibility-inlines-hidden -Werror=date-time > >>>> -Werror=unguarded-availability-new -std=c++11 -Wall -W > -Wno-unused-parameter > >>>> -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic > >>>> -Wno-long-long -Wcovered-switch-default -Wnon-virtual-dtor > >>>> -Wdelete-non-virtual-dtor -Wstring-conversion -O3 > -Wl,-search_paths_first > >>>> -Wl,-headerpad_max_install_names -L/sw/lib -Wl,-dead_strip > >>>> CMakeFiles/obj.llvm-tblgen.dir/AsmMatcherEmitter.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/AsmWriterEmitter.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/AsmWriterInst.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/Attributes.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/CallingConvEmitter.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeEmitterGen.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeGenDAGPatterns.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeGenHwModes.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeGenInstruction.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeGenMapTable.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeGenRegisters.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeGenSchedule.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeGenTarget.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/DAGISelEmitter.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcherEmitter.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcherGen.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcherOpt.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcher.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/DFAPacketizerEmitter.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/DisassemblerEmitter.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/FastISelEmitter.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/FixedLenDecoderEmitter.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/GlobalISelEmitter.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/InfoByHwMode.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/InstrInfoEmitter.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/IntrinsicEmitter.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/OptParserEmitter.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/PseudoLoweringEmitter.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/RegisterBankEmitter.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/RegisterInfoEmitter.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/SearchableTableEmitter.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/SubtargetEmitter.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/SubtargetFeatureInfo.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/TableGen.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/Types.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/X86DisassemblerTables.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/X86EVEX2VEXTablesEmitter.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/X86FoldTablesEmitter.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/X86ModRMFilters.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/X86RecognizableInstr.cpp.o > >>>> CMakeFiles/obj.llvm-tblgen.dir/CTagsEmitter.cpp.o -o > ../../bin/llvm-tblgen > >>>> -Wl,-rpath, at loader_path/../lib ../../lib/libLLVMSupport.a > >>>> ../../lib/libLLVMTableGen.a ../../lib/libLLVMSupport.a -lcurses -lz > -lm > >>>> ../../lib/libLLVMDemangle.a > >>>> Undefined symbols for architecture x86_64: > >>>> "llvm::Record::dump() const", referenced from: > >>>> llvm::getValueTypeByHwMode(llvm::Record*, llvm::CodeGenHwModes > >>>> const&) in InfoByHwMode.cpp.o > >>>> "llvm::SubtargetFeatureInfo::dump() const", referenced from: > >>>> (anonymous namespace)::AsmMatcherInfo::buildInfo() in > >>>> AsmMatcherEmitter.cpp.o > >>>> "(anonymous namespace)::MatchableInfo::dump() const", referenced > from: > >>>> (anonymous namespace)::AsmMatcherEmitter: > :run(llvm::raw_ostream&) > >>>> in AsmMatcherEmitter.cpp.o > >>>> ld: symbol(s) not found for architecture x86_64 > >>>> clang: error: linker command failed with exit code 1 (use -v to see > >>>> invocation) > >>>> make[2]: *** [bin/llvm-tblgen] Error 1 > >>>> make[1]: *** [utils/TableGen/CMakeFiles/llvm-tblgen.dir/all] Error 2 > >>>> make: *** [all] Error 2 > >>>> > >>>> This is on x86_64-apple-darwin16 with Xcode 9.0. > >>>> Jack > >>>> > >>>> _______________________________________________ > >>>> LLVM Developers mailing list > >>>> llvm-dev at lists.llvm.org > >>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > >>>> > >>> > >> > > > > > > _______________________________________________ > > LLVM Developers mailing list > > llvm-dev at lists.llvm.org > > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20171015/c22e5c3b/attachment.html>
On Sun, Oct 15, 2017 at 10:58 AM, Don Hinton <hintonda at gmail.com> wrote:> Thanks Aaron. > > I don't have a Windows system, and haven't seen any buildbot failures, so I > it's difficult to come up with a patch for something I can't reproduce > locally or see any actual failures. Could you send me the commands you used > that uncovered the failure?This was from building Clang + LLVM on Windows 10 with MSVC 2017 x64 Debug. My cmake command to generate the VS solution is pretty uninteresting: cmake -G "Visual Studio 15 Win64" ..\llvm I fixed a few of the link errors that Jack pointed out before stumbling on the problem in AsmMatcherEmitter::run(). I wasn't comfortable attempting to work around it there because the DEBUG_WITH_TYPE macro was conflicting with trying to guard calls to MatchableInfo::dump() with LLVM_ENABLE_DUMP. I think this is another instance of "TableGen wasn't done along with the rest of llvm" -- nothing about it should be Visual Studio- or Windows-specific. ~Aaron> > thanks again... > don > > On Sun, Oct 15, 2017 at 7:35 AM, Aaron Ballman <aaron at aaronballman.com> > wrote: >> >> On Sat, Oct 14, 2017 at 11:25 AM, Don Hinton via llvm-dev >> <llvm-dev at lists.llvm.org> wrote: >> > Hi Jack: >> > >> > Yes, I was just looking at that. Seems like TableGen wasn't done along >> > with >> > the rest of llvm. I'll work up a complete patch shortly. >> >> This also broke the build for MSVC when doing a debug build (though no >> builder seems to be picking up the failure!). After working around a >> handful of link errors, I came to one that's going to require more >> understanding of LLVM's tablegen than I have. >> >> Error LNK2019 unresolved external symbol "public: void __cdecl >> `anonymous namespace'::MatchableInfo::dump(void)const " >> (?dump at MatchableInfo@?A0xf4f1c304@@QEBAXXZ) referenced in function >> "public: void __cdecl `anonymous >> namespace'::AsmMatcherEmitter::run(class llvm::raw_ostream &)" >> (?run at AsmMatcherEmitter@?A0xf4f1c304@@QEAAXAEAVraw_ostream at llvm@@@Z) >> llvm-tblgen D:\llvm\2017\utils\TableGen\AsmMatcherEmitter.obj 1 >> >> Since this has been broken for over a day and the fixes are >> nontrivial, I've reverted your commit (r315590) in r315854. Hopefully >> this doesn't cause you too many problems! >> >> ~Aaron >> >> > >> > Btw, I'm curious how this happened. Do you have a stale CMakeCache.txt >> > by >> > any chance? You might check the value for LLVM_ENABLE_DUMP and see if >> > it's >> > consistent. >> > >> > Again, I'll gen up a complete patch shortly -- sorry for delay, had to >> > walk >> > my dog first... >> > >> > thanks... >> > don >> > >> > On Sat, Oct 14, 2017 at 8:06 AM, Jack Howarth >> > <howarth.mailing.lists at gmail.com> wrote: >> >> >> >> >> >> >> >> On Sat, Oct 14, 2017 at 10:25 AM, Don Hinton <hintonda at gmail.com> >> >> wrote: >> >>> >> >>> Hi Jack: >> >>> >> >>> Looks like I missed this one in my recent change. >> >>> >> >>> Please let me know if this solves your problem: >> >>> >> >>> $ git diff >> >>> diff --git a/utils/TableGen/InfoByHwMode.cpp >> >>> b/utils/TableGen/InfoByHwMode.cpp >> >>> index 7e1e1864356..8d3636432aa 100644 >> >>> --- a/utils/TableGen/InfoByHwMode.cpp >> >>> +++ b/utils/TableGen/InfoByHwMode.cpp >> >>> @@ -98,14 +98,16 @@ void ValueTypeByHwMode::writeToStream(raw_ostream >> >>> &OS) const { >> >>> OS << '}'; >> >>> } >> >>> >> >>> +#ifdef LLVM_ENABLE_DUMP >> >>> LLVM_DUMP_METHOD >> >>> void ValueTypeByHwMode::dump() const { >> >>> dbgs() << *this << '\n'; >> >>> } >> >>> +#endif >> >>> >> >>> ValueTypeByHwMode llvm::getValueTypeByHwMode(Record *Rec, >> >>> const CodeGenHwModes >> >>> &CGH) >> >>> { >> >>> -#ifndef NDEBUG >> >>> +#ifdef LLVM_ENABLE_DUMP >> >>> if (!Rec->isSubClassOf("ValueType")) >> >>> Rec->dump(); >> >>> #endif >> >>> >> >>> >> >>> thanks... >> >>> don >> >>> >> >> >> >> The patch seems to be incomplete as it moves the failure to... >> >> >> >> [ 6%] Linking CXX executable ../../bin/llvm-tblgen >> >> cd /sw/src/fink.build/llvm60-6.0.0-1/build/stage1/utils/TableGen && >> >> /sw/bin/cmake -E cmake_link_script CMakeFiles/llvm-tblgen.dir/link.txt >> >> --verbose=1 >> >> /sw/src/fink.build/llvm60-6.0.0-1/opt-bin/ccclang++ -fno-common -fPIC >> >> -fvisibility-inlines-hidden -Werror=date-time >> >> -Werror=unguarded-availability-new -std=c++11 -Wall -W >> >> -Wno-unused-parameter >> >> -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic >> >> -Wno-long-long -Wcovered-switch-default -Wnon-virtual-dtor >> >> -Wdelete-non-virtual-dtor -Wstring-conversion -O3 >> >> -Wl,-search_paths_first >> >> -Wl,-headerpad_max_install_names -L/sw/lib -Wl,-dead_strip >> >> CMakeFiles/obj.llvm-tblgen.dir/AsmMatcherEmitter.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/AsmWriterEmitter.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/AsmWriterInst.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/Attributes.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/CallingConvEmitter.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/CodeEmitterGen.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/CodeGenDAGPatterns.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/CodeGenHwModes.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/CodeGenInstruction.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/CodeGenMapTable.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/CodeGenRegisters.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/CodeGenSchedule.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/CodeGenTarget.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/DAGISelEmitter.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcherEmitter.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcherGen.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcherOpt.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcher.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/DFAPacketizerEmitter.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/DisassemblerEmitter.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/FastISelEmitter.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/FixedLenDecoderEmitter.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/GlobalISelEmitter.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/InfoByHwMode.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/InstrInfoEmitter.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/IntrinsicEmitter.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/OptParserEmitter.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/PseudoLoweringEmitter.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/RegisterBankEmitter.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/RegisterInfoEmitter.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/SearchableTableEmitter.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/SubtargetEmitter.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/SubtargetFeatureInfo.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/TableGen.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/Types.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/X86DisassemblerTables.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/X86EVEX2VEXTablesEmitter.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/X86FoldTablesEmitter.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/X86ModRMFilters.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/X86RecognizableInstr.cpp.o >> >> CMakeFiles/obj.llvm-tblgen.dir/CTagsEmitter.cpp.o -o >> >> ../../bin/llvm-tblgen >> >> -Wl,-rpath, at loader_path/../lib ../../lib/libLLVMSupport.a >> >> ../../lib/libLLVMTableGen.a ../../lib/libLLVMSupport.a -lcurses -lz -lm >> >> ../../lib/libLLVMDemangle.a >> >> Undefined symbols for architecture x86_64: >> >> "llvm::SubtargetFeatureInfo::dump() const", referenced from: >> >> (anonymous namespace)::AsmMatcherInfo::buildInfo() in >> >> AsmMatcherEmitter.cpp.o >> >> "(anonymous namespace)::MatchableInfo::dump() const", referenced >> >> from: >> >> (anonymous namespace)::AsmMatcherEmitter::run(llvm::raw_ostream&) >> >> in >> >> AsmMatcherEmitter.cpp.o >> >> ld: symbol(s) not found for architecture x86_64 >> >> clang: error: linker command failed with exit code 1 (use -v to see >> >> invocation) >> >> make[2]: *** [bin/llvm-tblgen] Error 1 >> >> make[1]: *** [utils/TableGen/CMakeFiles/llvm-tblgen.dir/all] Error 2 >> >> make: *** [all] Error 2 >> >> >> >> Jack >> >> >> >>> >> >>> >> >>> On Sat, Oct 14, 2017 at 6:06 AM, Jack Howarth via llvm-dev >> >>> <llvm-dev at lists.llvm.org> wrote: >> >>>> >> >>>> Is anyone else seeing this bootstrap failure on current svn trunk? >> >>>> >> >>>> [ 6%] Linking CXX executable ../../bin/llvm-tblgen >> >>>> cd /sw/src/fink.build/llvm60-6.0.0-1/build/stage1/utils/TableGen && >> >>>> /sw/bin/cmake -E cmake_link_script >> >>>> CMakeFiles/llvm-tblgen.dir/link.txt >> >>>> --verbose=1 >> >>>> /sw/src/fink.build/llvm60-6.0.0-1/opt-bin/ccclang++ -fno-common >> >>>> -fPIC >> >>>> -fvisibility-inlines-hidden -Werror=date-time >> >>>> -Werror=unguarded-availability-new -std=c++11 -Wall -W >> >>>> -Wno-unused-parameter >> >>>> -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic >> >>>> -Wno-long-long -Wcovered-switch-default -Wnon-virtual-dtor >> >>>> -Wdelete-non-virtual-dtor -Wstring-conversion -O3 >> >>>> -Wl,-search_paths_first >> >>>> -Wl,-headerpad_max_install_names -L/sw/lib -Wl,-dead_strip >> >>>> CMakeFiles/obj.llvm-tblgen.dir/AsmMatcherEmitter.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/AsmWriterEmitter.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/AsmWriterInst.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/Attributes.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/CallingConvEmitter.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeEmitterGen.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeGenDAGPatterns.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeGenHwModes.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeGenInstruction.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeGenMapTable.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeGenRegisters.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeGenSchedule.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/CodeGenTarget.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/DAGISelEmitter.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcherEmitter.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcherGen.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcherOpt.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/DAGISelMatcher.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/DFAPacketizerEmitter.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/DisassemblerEmitter.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/FastISelEmitter.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/FixedLenDecoderEmitter.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/GlobalISelEmitter.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/InfoByHwMode.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/InstrInfoEmitter.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/IntrinsicEmitter.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/OptParserEmitter.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/PseudoLoweringEmitter.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/RegisterBankEmitter.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/RegisterInfoEmitter.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/SearchableTableEmitter.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/SubtargetEmitter.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/SubtargetFeatureInfo.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/TableGen.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/Types.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/X86DisassemblerTables.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/X86EVEX2VEXTablesEmitter.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/X86FoldTablesEmitter.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/X86ModRMFilters.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/X86RecognizableInstr.cpp.o >> >>>> CMakeFiles/obj.llvm-tblgen.dir/CTagsEmitter.cpp.o -o >> >>>> ../../bin/llvm-tblgen >> >>>> -Wl,-rpath, at loader_path/../lib ../../lib/libLLVMSupport.a >> >>>> ../../lib/libLLVMTableGen.a ../../lib/libLLVMSupport.a -lcurses -lz >> >>>> -lm >> >>>> ../../lib/libLLVMDemangle.a >> >>>> Undefined symbols for architecture x86_64: >> >>>> "llvm::Record::dump() const", referenced from: >> >>>> llvm::getValueTypeByHwMode(llvm::Record*, llvm::CodeGenHwModes >> >>>> const&) in InfoByHwMode.cpp.o >> >>>> "llvm::SubtargetFeatureInfo::dump() const", referenced from: >> >>>> (anonymous namespace)::AsmMatcherInfo::buildInfo() in >> >>>> AsmMatcherEmitter.cpp.o >> >>>> "(anonymous namespace)::MatchableInfo::dump() const", referenced >> >>>> from: >> >>>> (anonymous >> >>>> namespace)::AsmMatcherEmitter::run(llvm::raw_ostream&) >> >>>> in AsmMatcherEmitter.cpp.o >> >>>> ld: symbol(s) not found for architecture x86_64 >> >>>> clang: error: linker command failed with exit code 1 (use -v to see >> >>>> invocation) >> >>>> make[2]: *** [bin/llvm-tblgen] Error 1 >> >>>> make[1]: *** [utils/TableGen/CMakeFiles/llvm-tblgen.dir/all] Error 2 >> >>>> make: *** [all] Error 2 >> >>>> >> >>>> This is on x86_64-apple-darwin16 with Xcode 9.0. >> >>>> Jack >> >>>> >> >>>> _______________________________________________ >> >>>> LLVM Developers mailing list >> >>>> llvm-dev at lists.llvm.org >> >>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >> >>>> >> >>> >> >> >> > >> > >> > _______________________________________________ >> > LLVM Developers mailing list >> > llvm-dev at lists.llvm.org >> > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >> > > >