Gordon Keiser
2012-Dec-04 04:08 UTC
[LLVMdev] Visual Studio 2012 cl.exe ICE while building LLVM for x64 (in TableGen) at -O2
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 >
Michael Spencer
2012-Dec-04 06:29 UTC
[LLVMdev] Visual Studio 2012 cl.exe ICE while building LLVM for x64 (in TableGen) at -O2
On Mon, Dec 3, 2012 at 8:08 PM, Gordon Keiser <gkeiser at arxan.com> wrote:> 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.I'm guessing this was specific to the arm backend. As quite a few people are building with MSVC daily. It would be nice if MSVC defaulted to all targets instead of just x86 so we get more coverage on this type of stuff. - Michael Spencer> > 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 >> > > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
Nicholas Chapman
2012-Dec-04 11:28 UTC
[LLVMdev] Visual Studio 2012 cl.exe ICE while building LLVM for x64 (in TableGen) at -O2
On 04/12/2012 06:29, Michael Spencer wrote:> On Mon, Dec 3, 2012 at 8:08 PM, Gordon Keiser <gkeiser at arxan.com> wrote: >> 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. > I'm guessing this was specific to the arm backend. As quite a few > people are building with MSVC daily. > >No, it happens targeting x64, and maybe x86 as well. Nick C.
Maybe Matching Threads
- [LLVMdev] Visual Studio 2012 cl.exe ICE while building LLVM for x64 (in TableGen) at -O2
- [LLVMdev] Visual Studio 2012 cl.exe ICE while building LLVM for x64 (in TableGen) at -O2
- [LLVMdev] Visual Studio 2012 cl.exe ICE while building LLVM for x64 (in TableGen) at -O2
- [LLVMdev] Visual Studio 2012 cl.exe ICE while building LLVM for x64 (in TableGen) at -O2
- [LLVMdev] Broken PLT on ARM from R183966