[LLVMdev] Visual Studio 2012 cl.exe ICE while building LLVM for x64 (in TableGen) at -O2

Gordon Keiser gkeiser at arxan.com
Mon Dec 3 20:08:41 PST 2012


As an update to this: 
http://connect.microsoft.com/VisualStudio/feedback/details/769222/cl-exe-ice-when-building-llvm-trunk-at-o2

Microsoft has reproduced the ICE, given a workaround, and is planning a fix for a future MSVC release.   I know not a lot of people are building with VS, but it's nice to know.  The workaround involves marking a single function with attribute((noinline)) and is detailed on the page,  so nothing too horrible there.  

Cheers,
Gordon Keiser
Software Development Engineer
Arxan Technologies


> -----Original Message-----
> From: Gordon Keiser
> Sent: Wednesday, October 31, 2012 2:02 AM
> To: llvmdev at cs.uiuc.edu
> Subject: Visual Studio 2012 cl.exe ICE while building LLVM for x64 (in
> TableGen) at -O2
> 
> Hi,
> 
> Just wanted to point this out here, in case it hasn't been run into yet.   I've
> filed a bug with MS already, but it might be a warning to anyone thinking about
> uninstalling their older versions.   Workaround was to build lib/TableGen
> (well, all of LLVM really due to a case of laziness) at /O1 and utils/TableGen at
> /Od.    Turning inline expansion to 0 apparently works as well.
> 
> https://connect.microsoft.com/VisualStudio/feedback/details/769222/cl-exe-
> ice-when-building-llvm-trunk-at-o2#details
> 
> Other than that the ARM assembler / disassembler plays nicely and I was able
> to produce bitcode with clang and lower it to ARM assembly, as well as use
> llvm-objdump to disassemble both x86 and ARM PEs (although ARM required
> a manual arch override).   If I can find a subset of the test suite that doesn't
> require MinGW I'll give it a run on the rasberry pi.
> 
> Gordon Keiser
> Software Development Engineer
> Arxan Technologies
> gkeiser at arxan.com  www.arxan.com
> 





More information about the llvm-dev mailing list