<div class="gmail_quote">2010/10/14 Ruben Van Boxem <span dir="ltr"><<a href="mailto:vanboxem.ruben@gmail.com">vanboxem.ruben@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div class="gmail_quote">2010/10/13 Anton Korobeynikov <span dir="ltr"><<a href="mailto:anton@korobeynikov.info" target="_blank">anton@korobeynikov.info</a>></span><div><div></div><div class="h5"><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div>> 1. CMake detects platform as i686-pc-mingw32, while my compiler is very<br>
> clearly x86_64-w64-mingw32.<br>
</div>Ok, sounds like cmake bug.<br>
<div>> 2. Build at 55%, tblgen.exe crashes. The build then freezes (kill and<br>
> restart, it skips and fails at the error below)<br>
> 3. At 56%, build fails at an undeclared symbol: "SelectCode". This is<br>
> probably due to number 2<br>
> I have no idea what tblgen.exe is supposed to do or why it crashes. How<br>
> should I proceed?<br>
</div>Sounds like a gcc bug. The ideal solution will be for you to find<br>
what's causing such problem and file a PR in gcc's bugzilla.<br>
<div><div></div><div><br>
--<br>
With best regards, Anton Korobeynikov<br>
Faculty of Mathematics and Mechanics, Saint Petersburg State University<br>
</div></div></blockquote></div></div></div><br><div>The gdb stacktrace on the tblgen command that crashes is below:</div><blockquote class="gmail_quote" style="margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0.8ex;border-left-width:1px;border-left-color:rgb(204, 204, 204);border-left-style:solid;padding-left:1ex">

#0 0x000000000048eb84 in FactorNodes(llvm::OwningPtr<llvm::Matcher>&) ()</blockquote><blockquote class="gmail_quote" style="margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0.8ex;border-left-width:1px;border-left-color:rgb(204, 204, 204);border-left-style:solid;padding-left:1ex">

... (998 times the same!)</blockquote><div><blockquote class="gmail_quote" style="margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0.8ex;border-left-width:1px;border-left-color:rgb(204, 204, 204);border-left-style:solid;padding-left:1ex">

#997 0x000000000048ec1a in FactorNodes(llvm::OwningPtr<llvm::Matcher>&) ()</blockquote><blockquote class="gmail_quote" style="margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0.8ex;border-left-width:1px;border-left-color:rgb(204, 204, 204);border-left-style:solid;padding-left:1ex">

#998 0x0000000000490283 in llvm::OptimizeMatcher(llvm::Matcher*, llvm::CodeGenDAGPatterns const&) ()</blockquote><blockquote class="gmail_quote" style="margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0.8ex;border-left-width:1px;border-left-color:rgb(204, 204, 204);border-left-style:solid;padding-left:1ex">

#999 0x0000000000480f48 in llvm::DAGISelEmitter::run(llvm::raw_ostream&) ()</blockquote><blockquote class="gmail_quote" style="margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0.8ex;border-left-width:1px;border-left-color:rgb(204, 204, 204);border-left-style:solid;padding-left:1ex">

#1000 0x0000000000523928 in main ()</blockquote></div><div>Should I enable debug info (how?) or is this as complete as it gets?</div><div><br></div><div>My plan is to be able to replace GCC completely by Clang. So I need:</div>

<div>1. to compile Clang</div><div>2. show it how to use the mingw-w64 runtime (and compile this runtime with clang)</div><div>3. test the bejeezus out of it :)</div><div><br></div><div>1 is a work in progress, I'm trying a GCC 4.4 build now, it wouldn't surprise me that 4.5 is the cause of this crash. Once I have a working Clang for Win64 this will be a non-issue of course (I would use clang to build clang).</div>

<div>I have absolutely no idea how to set up 2 and 3. Any help/guidance is much appreciated. With GCC, it's pretty much:</div><div> - build deps (gmp, mpc, mpfr)</div><div> - build gcc c compiler</div><div> - use new compiler to build mingw-w64 runtime</div>

<div> - use new mingw-w64 runtime to build full GCC (C++, etc)</div><div><br></div><div>How would this go with Clang?</div><div><br></div><div>Thanks for helping me help you help me help mingw-w64!</div><div><br></div><font color="#888888"><div>

Ruben</div></font><div><br></div><div>PS: thank you for the CMake patch. It works (as far as I can tell) Does it do anything except change the printed triplet? (like ABI choosing, defines...)</div>
</blockquote></div><br><div>An idea just popped into my mind: why not use MSVC to compile Clang, and compile the mingw-w64 runtime with that Clang compiler, and recompile clang with clang? This would require me to have some details on steps 2 and 3 from above though.</div>
<div><br></div><div>Ruben</div><div><br></div><div>PS: so this is what I mean:</div><div>1. build MSVC Clang x64 running on MS runtime</div><div>2. build mingw-w64 runtime with Clang x64</div><div>3. build Clang x64 based on mingw-w64 runtime from 2 (how do I do this??)</div>