Description
LLVM-MSVC fails to compile the default Hello World program that is given as a template when you generate a new Visual Studio project for a Console C++ application when targetting the ARM32 architecture (which is simply called ARM in Visual Studio). Version of LLVM-MSVC used is llvm-msvc-v777.2.2, with the files copied over an installation of llvm-msvc-v777.1.9/llvm-msvc_X86_64_installer.exe. VS version used is latest (at the time) VS2022 Enterprise (also tested with VS2019) with the 10.0.22621.0 Windows SDK. Host used is Windows Server 2022 Datacenter, build 10.0.20348.3692. The same program compiles fine for the x86, x64 and ARM64 architectures. Provided below are the error logs for the various LLVM-MSVC options in Visual Studio (it fails for all of them):
Using LLVM-MSVC_v143:
Build started at 9:13 PM...
1>------ Build started: Project: ConsoleApplication4, Configuration: Release ARM ------
1>llvm-msvc(v777.2.2) spent 0.680s in ConsoleApplication4.cpp
1>LINK : LLVM error : Cannot select: 0x17c53cd0788: ch = catchret 0x17c537d0168, BasicBlock:ch< 0x17c53d11c18>, BasicBlock:ch< 0x17c53cd8768>, C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.44.35207\include\__msvc_ostream.hpp:805
1>In function: ??$?6U?$char_traits@D@std@@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@PBD@Z
1>PLEASE submit a bug report to https://github.com/backengineering/llvm-msvc/issues and include the crash backtrace.
1>Stack dump:
1>0. Program arguments: C:\\llvm-msvc_X86_64\\bin\\lld-link.exe /ERRORREPORT:PROMPT @C:\\Users\\Kristibek\\AppData\\Local\\Temp\\1\\MSBuildTemp\\tmp25a4402fe6e945d7859e64cfb66f7390.rsp
1>1. Running pass 'Function Pass Manager' on module 'ld-temp.o'.
1>2. Running pass 'ARM Instruction Selection' on function '@"??$?6U?$char_traits@D@std@@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@PBD@Z"'
1>Exception Code: 0x80000003
1> #0 0x00007ff7080bf6c5 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xaf6c5)
1> #1 0x00007ff70a2aaa8f (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x229aa8f)
1> #2 0x00007ff70a2aa38c (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x229a38c)
1> #3 0x00007ff7080b4700 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xa4700)
1> #4 0x00007ff708eb912a (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xea912a)
1> #5 0x00007ff708ec1ee9 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xeb1ee9)
1> #6 0x00007ff70873e61f (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x72e61f)
1> #7 0x00007ff708eba571 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xeaa571)
1> #8 0x00007ff708eb9bf4 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xea9bf4)
1> #9 0x00007ff708ebe7af (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xeae7af)
1>#10 0x00007ff708ec6623 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xeb6623)
1>#11 0x00007ff70874bb84 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x73bb84)
1>#12 0x00007ff7091e968a (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x11d968a)
1>#13 0x00007ff70a179963 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x2169963)
1>#14 0x00007ff70a179b93 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x2169b93)
1>#15 0x00007ff70a179e22 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x2169e22)
1>#16 0x00007ff70a179610 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x2169610)
1>#17 0x00007ff7090ba0db (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x10aa0db)
1>#18 0x00007ff7090b97bb (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x10a97bb)
1>#19 0x00007ff7090b2013 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x10a2013)
1>#20 0x00007ff7090b133a (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x10a133a)
1>#21 0x00007ff70819ad31 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x18ad31)
1>#22 0x00007ff708158e63 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x148e63)
1>#23 0x00007ff708142196 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x132196)
1>#24 0x00007ff70813ad35 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x12ad35)
1>#25 0x00007ff70811bbb1 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x10bbb1)
1>#26 0x00007ff708095f1c (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x85f1c)
1>#27 0x00007ff7080960d4 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x860d4)
1>#28 0x00007ff70a29c280 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x228c280)
1>#29 0x00007fff6b9b4cb0 (C:\Windows\System32\KERNEL32.DLL+0x14cb0)
1>#30 0x00007fff6c87edcb (C:\Windows\SYSTEM32\ntdll.dll+0x7edcb)
1>Done building project "ConsoleApplication4.vcxproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
========== Build completed at 9:13 PM and took 01.249 seconds ==========
Using LLVM-MSVC_v142:
Build started at 9:15 PM...
1>------ Build started: Project: ConsoleApplication4, Configuration: Release ARM ------
1>llvm-msvc(v777.2.2) spent 0.526s in ConsoleApplication4.cpp
1>LINK : LLVM error : Cannot select: 0x246fce43d88: ch = catchret 0x246fcd90168, BasicBlock:ch< 0x246fce7c1a8>, BasicBlock:ch< 0x246fce7f368>, C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.29.30133\include\ostream:767
1>In function: ??$?6U?$char_traits@D@std@@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@PBD@Z
1>PLEASE submit a bug report to https://github.com/backengineering/llvm-msvc/issues and include the crash backtrace.
1>Stack dump:
1>0. Program arguments: C:\\llvm-msvc_X86_64\\bin\\lld-link.exe /ERRORREPORT:PROMPT @C:\\Users\\Kristibek\\AppData\\Local\\Temp\\1\\MSBuildTemp\\tmp93ed57f318e04e308f283595cae2deaf.rsp
1>1. Running pass 'Function Pass Manager' on module 'ld-temp.o'.
1>2. Running pass 'ARM Instruction Selection' on function '@"??$?6U?$char_traits@D@std@@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@PBD@Z"'
1>Exception Code: 0x80000003
1> #0 0x00007ff7080bf6c5 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xaf6c5)
1> #1 0x00007ff70a2aaa8f (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x229aa8f)
1> #2 0x00007ff70a2aa38c (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x229a38c)
1> #3 0x00007ff7080b4700 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xa4700)
1> #4 0x00007ff708eb912a (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xea912a)
1> #5 0x00007ff708ec1ee9 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xeb1ee9)
1> #6 0x00007ff70873e61f (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x72e61f)
1> #7 0x00007ff708eba571 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xeaa571)
1> #8 0x00007ff708eb9bf4 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xea9bf4)
1> #9 0x00007ff708ebe7af (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xeae7af)
1>#10 0x00007ff708ec6623 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xeb6623)
1>#11 0x00007ff70874bb84 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x73bb84)
1>#12 0x00007ff7091e968a (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x11d968a)
1>#13 0x00007ff70a179963 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x2169963)
1>#14 0x00007ff70a179b93 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x2169b93)
1>#15 0x00007ff70a179e22 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x2169e22)
1>#16 0x00007ff70a179610 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x2169610)
1>#17 0x00007ff7090ba0db (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x10aa0db)
1>#18 0x00007ff7090b97bb (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x10a97bb)
1>#19 0x00007ff7090b2013 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x10a2013)
1>#20 0x00007ff7090b133a (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x10a133a)
1>#21 0x00007ff70819ad31 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x18ad31)
1>#22 0x00007ff708158e63 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x148e63)
1>#23 0x00007ff708142196 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x132196)
1>#24 0x00007ff70813ad35 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x12ad35)
1>#25 0x00007ff70811bbb1 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x10bbb1)
1>#26 0x00007ff708095f1c (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x85f1c)
1>#27 0x00007ff7080960d4 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x860d4)
1>#28 0x00007ff70a29c280 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x228c280)
1>#29 0x00007fff6b9b4cb0 (C:\Windows\System32\KERNEL32.DLL+0x14cb0)
1>#30 0x00007fff6c87edcb (C:\Windows\SYSTEM32\ntdll.dll+0x7edcb)
1>Done building project "ConsoleApplication4.vcxproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
========== Build completed at 9:15 PM and took 00.900 seconds ==========
Using LLVM-MSVC_v141:
Build started at 9:15 PM...
1>------ Build started: Project: ConsoleApplication4, Configuration: Release ARM ------
1>llvm-msvc(v777.2.2) spent 0.438s in ConsoleApplication4.cpp
1>LINK : LLVM error : Cannot select: 0x18e533a8588: ch = catchret 0x18e532c0168, BasicBlock:ch< 0x18e533c0da8>, BasicBlock:ch< 0x18e533a3f68>, C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.16.27023\include\ostream:826
1>In function: ??$?6U?$char_traits@D@std@@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@PBD@Z
1>PLEASE submit a bug report to https://github.com/backengineering/llvm-msvc/issues and include the crash backtrace.
1>Stack dump:
1>0. Program arguments: C:\\llvm-msvc_X86_64\\bin\\lld-link.exe /ERRORREPORT:PROMPT @C:\\Users\\Kristibek\\AppData\\Local\\Temp\\1\\MSBuildTemp\\tmp4cdef4046e084c4d8eee047c0ff7d602.rsp
1>1. Running pass 'Function Pass Manager' on module 'ld-temp.o'.
1>2. Running pass 'ARM Instruction Selection' on function '@"??$?6U?$char_traits@D@std@@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@PBD@Z"'
1>Exception Code: 0x80000003
1> #0 0x00007ff7080bf6c5 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xaf6c5)
1> #1 0x00007ff70a2aaa8f (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x229aa8f)
1> #2 0x00007ff70a2aa38c (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x229a38c)
1> #3 0x00007ff7080b4700 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xa4700)
1> #4 0x00007ff708eb912a (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xea912a)
1> #5 0x00007ff708ec1ee9 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xeb1ee9)
1> #6 0x00007ff70873e61f (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x72e61f)
1> #7 0x00007ff708eba571 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xeaa571)
1> #8 0x00007ff708eb9bf4 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xea9bf4)
1> #9 0x00007ff708ebe7af (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xeae7af)
1>#10 0x00007ff708ec6623 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0xeb6623)
1>#11 0x00007ff70874bb84 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x73bb84)
1>#12 0x00007ff7091e968a (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x11d968a)
1>#13 0x00007ff70a179963 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x2169963)
1>#14 0x00007ff70a179b93 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x2169b93)
1>#15 0x00007ff70a179e22 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x2169e22)
1>#16 0x00007ff70a179610 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x2169610)
1>#17 0x00007ff7090ba0db (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x10aa0db)
1>#18 0x00007ff7090b97bb (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x10a97bb)
1>#19 0x00007ff7090b2013 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x10a2013)
1>#20 0x00007ff7090b133a (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x10a133a)
1>#21 0x00007ff70819ad31 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x18ad31)
1>#22 0x00007ff708158e63 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x148e63)
1>#23 0x00007ff708142196 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x132196)
1>#24 0x00007ff70813ad35 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x12ad35)
1>#25 0x00007ff70811bbb1 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x10bbb1)
1>#26 0x00007ff708095f1c (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x85f1c)
1>#27 0x00007ff7080960d4 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x860d4)
1>#28 0x00007ff70a29c280 (C:\llvm-msvc_X86_64\bin\lld-link.exe+0x228c280)
1>#29 0x00007fff6b9b4cb0 (C:\Windows\System32\KERNEL32.DLL+0x14cb0)
1>#30 0x00007fff6c87edcb (C:\Windows\SYSTEM32\ntdll.dll+0x7edcb)
1>Done building project "ConsoleApplication4.vcxproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
========== Build completed at 9:15 PM and took 00.843 seconds ==========