From 10a11ecb59b8b9d5de462930960df0d4bd4bf801 Mon Sep 17 00:00:00 2001 From: Torok Edwin Date: Fri, 30 Sep 2011 12:31:57 +0000 Subject: Instead of crashing when MCAsmInfo is NULL, add an assert. This helps with porting code from 2.9 to 3.0 as TargetSelect.h changed location, and if you include the old one by accident you will trigger this assert. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140848 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/LLVMTargetMachine.cpp | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'lib/CodeGen/LLVMTargetMachine.cpp') diff --git a/lib/CodeGen/LLVMTargetMachine.cpp b/lib/CodeGen/LLVMTargetMachine.cpp index 8f463e2d3f..3bd1d6071e 100644 --- a/lib/CodeGen/LLVMTargetMachine.cpp +++ b/lib/CodeGen/LLVMTargetMachine.cpp @@ -114,6 +114,11 @@ LLVMTargetMachine::LLVMTargetMachine(const Target &T, StringRef Triple, : TargetMachine(T, Triple, CPU, FS) { CodeGenInfo = T.createMCCodeGenInfo(Triple, RM, CM); AsmInfo = T.createMCAsmInfo(Triple); + // TargetSelect.h moved to different directory between LLVM 2.9 and 3.0, + // and if the old one gets included then MCAsmInfo will be NULL and we'd crash + // later. + // Provide the user a useful error message about whats wrong. + assert(AsmInfo && "MCAsmInfo not initialized. Make sure you include the correct TargetSelect.h!"); } bool LLVMTargetMachine::addPassesToEmitFile(PassManagerBase &PM, -- cgit v1.2.3