Hi! I’ve recently started learning LLVM, and I’ve been going through the Kaleidoscope language tutorial (LLVM version 15.0.0), but I’m having issues with exiting my program correctly. Currently, I’m in the 8th chapter of the tutorial, and whenever I build and run my program using the provided Kaleidoscope snippet (def average(x y) (x + y) * 0.5;
) and insert an EOF character I trigger a breakpoint in exe_common.inl
(note that since I’m on Windows 10, I use Ctrl + Z
instead of Ctrl + D
for my EOF character, but this shouldn’t be an issue, seeing as when I reimplemented the chapter using a file the issue was still there). I’ve tried copying the source code of the chapter exactly, but the issue still remains. Also note that whenever I step through my code using the ‘continue’ method I get heap corruption error, but this information may not be what I’m looking for, since it may be caused by the error before it. Below is the call stack:
My Setup
I’ve built LLVM from source using VS 2022 in Release (Debug is a bit too heavy for my machine because of all the debug information generated) using the ‘Rebuild all’ option. I have then included the necessary files in my second VS solution. The necessary includes have been generated using the following command:llvm-config --cxxflags --ldflags --system-libs --libs all
, which resulted in the following data:
-IC:\dev\thirdparty\llvm-15.0\llvm-project\llvm\include -IC:\dev\thirdparty\llvm-15.0\llvm-project\build\include -std:c++14 /EHs-c- /GR- -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NONSTDC_NO_WARNINGS -D_SCL_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -DUNICODE -D_UNICODE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS
-LIBPATH:C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMWindowsManifest.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMWindowsDriver.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMXRay.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMLibDriver.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMDlltoolDriver.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMCoverage.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMLineEditor.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMXCoreDisassembler.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMXCoreCodeGen.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMXCoreDesc.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMXCoreInfo.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMX86TargetMCA.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMX86Disassembler.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMX86AsmParser.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMX86CodeGen.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMX86Desc.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMX86Info.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMWebAssemblyDisassembler.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMWebAssemblyAsmParser.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMWebAssemblyCodeGen.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMWebAssemblyDesc.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMWebAssemblyUtils.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMWebAssemblyInfo.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMVEDisassembler.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMVEAsmParser.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMVECodeGen.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMVEDesc.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMVEInfo.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMSystemZDisassembler.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMSystemZAsmParser.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMSystemZCodeGen.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMSystemZDesc.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMSystemZInfo.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMSparcDisassembler.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMSparcAsmParser.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMSparcCodeGen.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMSparcDesc.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMSparcInfo.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMRISCVDisassembler.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMRISCVAsmParser.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMRISCVCodeGen.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMRISCVDesc.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMRISCVInfo.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMPowerPCDisassembler.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMPowerPCAsmParser.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMPowerPCCodeGen.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMPowerPCDesc.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMPowerPCInfo.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMNVPTXCodeGen.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMNVPTXDesc.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMNVPTXInfo.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMMSP430Disassembler.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMMSP430AsmParser.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMMSP430CodeGen.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMMSP430Desc.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMMSP430Info.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMMipsDisassembler.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMMipsAsmParser.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMMipsCodeGen.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMMipsDesc.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMMipsInfo.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMLanaiDisassembler.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMLanaiCodeGen.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMLanaiAsmParser.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMLanaiDesc.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMLanaiInfo.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMHexagonDisassembler.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMHexagonCodeGen.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMHexagonAsmParser.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMHexagonDesc.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMHexagonInfo.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMBPFDisassembler.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMBPFAsmParser.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMBPFCodeGen.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMBPFDesc.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMBPFInfo.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAVRDisassembler.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAVRAsmParser.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAVRCodeGen.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAVRDesc.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAVRInfo.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMARMDisassembler.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMARMAsmParser.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMARMCodeGen.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMARMDesc.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMARMUtils.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMARMInfo.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAMDGPUTargetMCA.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAMDGPUDisassembler.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAMDGPUAsmParser.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAMDGPUCodeGen.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAMDGPUDesc.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAMDGPUUtils.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAMDGPUInfo.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAArch64Disassembler.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAArch64AsmParser.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAArch64CodeGen.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAArch64Desc.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAArch64Utils.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAArch64Info.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMOrcJIT.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMMCJIT.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMJITLink.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMInterpreter.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMExecutionEngine.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMRuntimeDyld.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMOrcTargetProcess.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMOrcShared.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMDWP.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMDebugInfoGSYM.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMOption.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMObjectYAML.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMObjCopy.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMMCA.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMMCDisassembler.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMLTO.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMPasses.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMCFGuard.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMCoroutines.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMObjCARCOpts.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMipo.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMVectorize.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMLinker.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMInstrumentation.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMFrontendOpenMP.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMFrontendOpenACC.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMExtensions.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMDWARFLinker.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMGlobalISel.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMMIRParser.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAsmPrinter.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMSelectionDAG.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMCodeGen.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMIRReader.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAsmParser.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMInterfaceStub.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMFileCheck.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMFuzzMutate.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMTarget.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMScalarOpts.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMInstCombine.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAggressiveInstCombine.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMTransformUtils.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMBitWriter.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMAnalysis.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMProfileData.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMSymbolize.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMDebugInfoPDB.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMDebugInfoMSF.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMDebugInfoDWARF.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMObject.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMTextAPI.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMMCParser.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMMC.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMDebugInfoCodeView.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMBitReader.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMFuzzerCLI.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMCore.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMRemarks.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMBitstreamReader.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMBinaryFormat.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMTableGen.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMSupport.lib
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib\LLVMDemangle.lib
psapi.lib
shell32.lib
ole32.lib
uuid.lib
advapi32.lib
I have then parsed the data into my second VS solution as follows:
- Properties > C/C++ > Command Line
-IC:\dev\thirdparty\llvm-15.0\llvm-project\llvm\include -IC:\dev\thirdparty\llvm-15.0\llvm-project\build\include -std:c++14 /EHs-c- /GR- -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NONSTDC_NO_WARNINGS -D_SCL_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -DUNICODE -D_UNICODE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS
- Linker > General > Additional Library Directories
C:\dev\thirdparty\llvm-15.0\llvm-project\build\Release\lib
- Linker > Input > Additional Dependencies
LLVMWindowsManifest.lib
LLVMWindowsDriver.lib
LLVMXRay.lib
LLVMLibDriver.lib
LLVMDlltoolDriver.lib
LLVMCoverage.lib
LLVMLineEditor.lib
LLVMXCoreDisassembler.lib
LLVMXCoreCodeGen.lib
LLVMXCoreDesc.lib
LLVMXCoreInfo.lib
LLVMX86TargetMCA.lib
LLVMX86Disassembler.lib
LLVMX86AsmParser.lib
LLVMX86CodeGen.lib
LLVMX86Desc.lib
LLVMX86Info.lib
LLVMWebAssemblyDisassembler.lib
LLVMWebAssemblyAsmParser.lib
LLVMWebAssemblyCodeGen.lib
LLVMWebAssemblyDesc.lib
LLVMWebAssemblyUtils.lib
LLVMWebAssemblyInfo.lib
LLVMVEDisassembler.lib
LLVMVEAsmParser.lib
LLVMVECodeGen.lib
LLVMVEDesc.lib
LLVMVEInfo.lib
LLVMSystemZDisassembler.lib
LLVMSystemZAsmParser.lib
LLVMSystemZCodeGen.lib
LLVMSystemZDesc.lib
LLVMSystemZInfo.lib
LLVMSparcDisassembler.lib
LLVMSparcAsmParser.lib
LLVMSparcCodeGen.lib
LLVMSparcDesc.lib
LLVMSparcInfo.lib
LLVMRISCVDisassembler.lib
LLVMRISCVAsmParser.lib
LLVMRISCVCodeGen.lib
LLVMRISCVDesc.lib
LLVMRISCVInfo.lib
LLVMPowerPCDisassembler.lib
LLVMPowerPCAsmParser.lib
LLVMPowerPCCodeGen.lib
LLVMPowerPCDesc.lib
LLVMPowerPCInfo.lib
LLVMNVPTXCodeGen.lib
LLVMNVPTXDesc.lib
LLVMNVPTXInfo.lib
LLVMMSP430Disassembler.lib
LLVMMSP430AsmParser.lib
LLVMMSP430CodeGen.lib
LLVMMSP430Desc.lib
LLVMMSP430Info.lib
LLVMMipsDisassembler.lib
LLVMMipsAsmParser.lib
LLVMMipsCodeGen.lib
LLVMMipsDesc.lib
LLVMMipsInfo.lib
LLVMLanaiDisassembler.lib
LLVMLanaiCodeGen.lib
LLVMLanaiAsmParser.lib
LLVMLanaiDesc.lib
LLVMLanaiInfo.lib
LLVMHexagonDisassembler.lib
LLVMHexagonCodeGen.lib
LLVMHexagonAsmParser.lib
LLVMHexagonDesc.lib
LLVMHexagonInfo.lib
LLVMBPFDisassembler.lib
LLVMBPFAsmParser.lib
LLVMBPFCodeGen.lib
LLVMBPFDesc.lib
LLVMBPFInfo.lib
LLVMAVRDisassembler.lib
LLVMAVRAsmParser.lib
LLVMAVRCodeGen.lib
LLVMAVRDesc.lib
LLVMAVRInfo.lib
LLVMARMDisassembler.lib
LLVMARMAsmParser.lib
LLVMARMCodeGen.lib
LLVMARMDesc.lib
LLVMARMUtils.lib
LLVMARMInfo.lib
LLVMAMDGPUTargetMCA.lib
LLVMAMDGPUDisassembler.lib
LLVMAMDGPUAsmParser.lib
LLVMAMDGPUCodeGen.lib
LLVMAMDGPUDesc.lib
LLVMAMDGPUUtils.lib
LLVMAMDGPUInfo.lib
LLVMAArch64Disassembler.lib
LLVMAArch64AsmParser.lib
LLVMAArch64CodeGen.lib
LLVMAArch64Desc.lib
LLVMAArch64Utils.lib
LLVMAArch64Info.lib
LLVMOrcJIT.lib
LLVMMCJIT.lib
LLVMJITLink.lib
LLVMInterpreter.lib
LLVMExecutionEngine.lib
LLVMRuntimeDyld.lib
LLVMOrcTargetProcess.lib
LLVMOrcShared.lib
LLVMDWP.lib
LLVMDebugInfoGSYM.lib
LLVMOption.lib
LLVMObjectYAML.lib
LLVMObjCopy.lib
LLVMMCA.lib
LLVMMCDisassembler.lib
LLVMLTO.lib
LLVMPasses.lib
LLVMCFGuard.lib
LLVMCoroutines.lib
LLVMObjCARCOpts.lib
LLVMipo.lib
LLVMVectorize.lib
LLVMLinker.lib
LLVMInstrumentation.lib
LLVMFrontendOpenMP.lib
LLVMFrontendOpenACC.lib
LLVMExtensions.lib
LLVMDWARFLinker.lib
LLVMGlobalISel.lib
LLVMMIRParser.lib
LLVMAsmPrinter.lib
LLVMSelectionDAG.lib
LLVMCodeGen.lib
LLVMIRReader.lib
LLVMAsmParser.lib
LLVMInterfaceStub.lib
LLVMFileCheck.lib
LLVMFuzzMutate.lib
LLVMTarget.lib
LLVMScalarOpts.lib
LLVMInstCombine.lib
LLVMAggressiveInstCombine.lib
LLVMTransformUtils.lib
LLVMBitWriter.lib
LLVMAnalysis.lib
LLVMProfileData.lib
LLVMSymbolize.lib
LLVMDebugInfoPDB.lib
LLVMDebugInfoMSF.lib
LLVMDebugInfoDWARF.lib
LLVMObject.lib
LLVMTextAPI.lib
LLVMMCParser.lib
LLVMMC.lib
LLVMDebugInfoCodeView.lib
LLVMBitReader.lib
LLVMFuzzerCLI.lib
LLVMCore.lib
LLVMRemarks.lib
LLVMBitstreamReader.lib
LLVMBinaryFormat.lib
LLVMTableGen.lib
LLVMSupport.lib
LLVMDemangle.lib
psapi.lib
shell32.lib
ole32.lib
uuid.lib
advapi32.lib
Note that the code executes and builds just fine and everything works (the generated .obj file can be built with Clang without any issues, provided I add an entrypoint). What am I doing wrong here? Any help is greatly apreciated!