<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Sorry and thanks!<div><br></div><div>Evan</div><div><br><div><div>On Jul 14, 2011, at 5:10 PM, Chandler Carruth wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">FYI, this broke CMake, but I'm working on a patch to update it... will commit ASAP. If someone else was already on it and beats me to it, all the better. =D<br><br><div class="gmail_quote">On Thu, Jul 14, 2011 at 4:50 PM, Evan Cheng <span dir="ltr"><<a href="mailto:evan.cheng@apple.com">evan.cheng@apple.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Author: evancheng<br>
Date: Thu Jul 14 18:50:31 2011<br>
New Revision: 135219<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=135219&view=rev" target="_blank">http://llvm.org/viewvc/llvm-project?rev=135219&view=rev</a><br>
Log:<br>
Rename createAsmInfo to createMCAsmInfo and move registration code to MCTargetDesc to prepare for next round of changes.<br>
<br>
Added:<br>
llvm/trunk/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/ARM/ARMMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.h<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/ARM/ARMMCAsmInfo.h<br>
llvm/trunk/lib/Target/Alpha/MCTargetDesc/AlphaMCAsmInfo.cpp<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/Alpha/AlphaMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/Alpha/MCTargetDesc/AlphaMCAsmInfo.h<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/Alpha/AlphaMCAsmInfo.h<br>
llvm/trunk/lib/Target/Blackfin/MCTargetDesc/BlackfinMCAsmInfo.cpp<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/Blackfin/BlackfinMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/Blackfin/MCTargetDesc/BlackfinMCAsmInfo.h<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/Blackfin/BlackfinMCAsmInfo.h<br>
llvm/trunk/lib/Target/CellSPU/MCTargetDesc/SPUMCAsmInfo.cpp<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/CellSPU/SPUMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/CellSPU/MCTargetDesc/SPUMCAsmInfo.h<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/CellSPU/SPUMCAsmInfo.h<br>
llvm/trunk/lib/Target/MBlaze/MCTargetDesc/MBlazeMCAsmInfo.cpp<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/MBlaze/MBlazeMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/MBlaze/MCTargetDesc/MBlazeMCAsmInfo.h<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/MBlaze/MBlazeMCAsmInfo.h<br>
llvm/trunk/lib/Target/MSP430/MCTargetDesc/MSP430MCAsmInfo.cpp<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/MSP430/MSP430MCAsmInfo.cpp<br>
llvm/trunk/lib/Target/MSP430/MCTargetDesc/MSP430MCAsmInfo.h<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/MSP430/MSP430MCAsmInfo.h<br>
llvm/trunk/lib/Target/Mips/MCTargetDesc/MipsMCAsmInfo.cpp<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/Mips/MipsMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/Mips/MCTargetDesc/MipsMCAsmInfo.h<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/Mips/MipsMCAsmInfo.h<br>
llvm/trunk/lib/Target/PTX/MCTargetDesc/PTXMCAsmInfo.cpp<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/PTX/PTXMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/PTX/MCTargetDesc/PTXMCAsmInfo.h<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/PTX/PTXMCAsmInfo.h<br>
llvm/trunk/lib/Target/PowerPC/MCTargetDesc/PPCMCAsmInfo.cpp<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/PowerPC/PPCMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/PowerPC/MCTargetDesc/PPCMCAsmInfo.h<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/PowerPC/PPCMCAsmInfo.h<br>
llvm/trunk/lib/Target/Sparc/MCTargetDesc/SparcMCAsmInfo.cpp<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/Sparc/SparcMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/Sparc/MCTargetDesc/SparcMCAsmInfo.h<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/Sparc/SparcMCAsmInfo.h<br>
llvm/trunk/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmInfo.cpp<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/SystemZ/SystemZMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmInfo.h<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/SystemZ/SystemZMCAsmInfo.h<br>
llvm/trunk/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/X86/X86MCAsmInfo.cpp<br>
llvm/trunk/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.h<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/X86/X86MCAsmInfo.h<br>
llvm/trunk/lib/Target/XCore/MCTargetDesc/XCoreMCAsmInfo.cpp<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/XCore/XCoreMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/XCore/MCTargetDesc/XCoreMCAsmInfo.h<br>
- copied unchanged from r135183, llvm/trunk/lib/Target/XCore/XCoreMCAsmInfo.h<br>
Removed:<br>
llvm/trunk/lib/Target/ARM/ARMMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/ARM/ARMMCAsmInfo.h<br>
llvm/trunk/lib/Target/Alpha/AlphaMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/Alpha/AlphaMCAsmInfo.h<br>
llvm/trunk/lib/Target/Blackfin/BlackfinMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/Blackfin/BlackfinMCAsmInfo.h<br>
llvm/trunk/lib/Target/CellSPU/SPUMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/CellSPU/SPUMCAsmInfo.h<br>
llvm/trunk/lib/Target/MBlaze/MBlazeMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/MBlaze/MBlazeMCAsmInfo.h<br>
llvm/trunk/lib/Target/MSP430/MSP430MCAsmInfo.cpp<br>
llvm/trunk/lib/Target/MSP430/MSP430MCAsmInfo.h<br>
llvm/trunk/lib/Target/Mips/MipsMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/Mips/MipsMCAsmInfo.h<br>
llvm/trunk/lib/Target/PTX/PTXMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/PTX/PTXMCAsmInfo.h<br>
llvm/trunk/lib/Target/PowerPC/PPCMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/PowerPC/PPCMCAsmInfo.h<br>
llvm/trunk/lib/Target/Sparc/SparcMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/Sparc/SparcMCAsmInfo.h<br>
llvm/trunk/lib/Target/SystemZ/SystemZMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/SystemZ/SystemZMCAsmInfo.h<br>
llvm/trunk/lib/Target/X86/X86MCAsmInfo.cpp<br>
llvm/trunk/lib/Target/X86/X86MCAsmInfo.h<br>
llvm/trunk/lib/Target/XCore/XCoreMCAsmInfo.cpp<br>
llvm/trunk/lib/Target/XCore/XCoreMCAsmInfo.h<br>
Modified:<br>
llvm/trunk/autoconf/<a href="http://configure.ac/" target="_blank">configure.ac</a><br>
llvm/trunk/cmake/config-ix.cmake<br>
llvm/trunk/configure<br>
llvm/trunk/include/llvm-c/Target.h<br>
llvm/trunk/include/llvm/Config/config.h.cmake<br>
llvm/trunk/include/llvm/Config/<a href="http://config.h.in/" target="_blank">config.h.in</a><br>
llvm/trunk/include/llvm/Config/llvm-config.h.cmake<br>
llvm/trunk/include/llvm/Config/<a href="http://llvm-config.h.in/" target="_blank">llvm-config.h.in</a><br>
llvm/trunk/include/llvm/Target/TargetRegistry.h<br>
llvm/trunk/include/llvm/Target/TargetSelect.h<br>
llvm/trunk/lib/CodeGen/LLVMTargetMachine.cpp<br>
llvm/trunk/lib/MC/MCDisassembler/Disassembler.cpp<br>
llvm/trunk/lib/MC/MCDisassembler/EDDisassembler.cpp<br>
llvm/trunk/lib/Target/ARM/ARMTargetMachine.cpp<br>
llvm/trunk/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp<br>
llvm/trunk/lib/Target/Alpha/AlphaTargetMachine.cpp<br>
llvm/trunk/lib/Target/Alpha/MCTargetDesc/AlphaMCTargetDesc.cpp<br>
llvm/trunk/lib/Target/Alpha/MCTargetDesc/CMakeLists.txt<br>
llvm/trunk/lib/Target/Blackfin/BlackfinTargetMachine.cpp<br>
llvm/trunk/lib/Target/Blackfin/MCTargetDesc/BlackfinMCTargetDesc.cpp<br>
llvm/trunk/lib/Target/Blackfin/MCTargetDesc/CMakeLists.txt<br>
llvm/trunk/lib/Target/CBackend/CBackend.cpp<br>
llvm/trunk/lib/Target/CellSPU/CMakeLists.txt<br>
llvm/trunk/lib/Target/CellSPU/MCTargetDesc/CMakeLists.txt<br>
llvm/trunk/lib/Target/CellSPU/MCTargetDesc/SPUMCTargetDesc.cpp<br>
llvm/trunk/lib/Target/CellSPU/SPUTargetMachine.cpp<br>
llvm/trunk/lib/Target/CppBackend/CPPBackend.cpp<br>
llvm/trunk/lib/Target/MBlaze/CMakeLists.txt<br>
llvm/trunk/lib/Target/MBlaze/MBlazeTargetMachine.cpp<br>
llvm/trunk/lib/Target/MBlaze/MCTargetDesc/CMakeLists.txt<br>
llvm/trunk/lib/Target/MBlaze/MCTargetDesc/MBlazeMCTargetDesc.cpp<br>
llvm/trunk/lib/Target/MSP430/CMakeLists.txt<br>
llvm/trunk/lib/Target/MSP430/MCTargetDesc/CMakeLists.txt<br>
llvm/trunk/lib/Target/MSP430/MCTargetDesc/MSP430MCTargetDesc.cpp<br>
llvm/trunk/lib/Target/MSP430/MSP430AsmPrinter.cpp<br>
llvm/trunk/lib/Target/MSP430/MSP430TargetMachine.cpp<br>
llvm/trunk/lib/Target/Mips/CMakeLists.txt<br>
llvm/trunk/lib/Target/Mips/MCTargetDesc/CMakeLists.txt<br>
llvm/trunk/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp<br>
llvm/trunk/lib/Target/Mips/MipsTargetMachine.cpp<br>
llvm/trunk/lib/Target/PTX/CMakeLists.txt<br>
llvm/trunk/lib/Target/PTX/MCTargetDesc/CMakeLists.txt<br>
llvm/trunk/lib/Target/PTX/MCTargetDesc/PTXMCTargetDesc.cpp<br>
llvm/trunk/lib/Target/PTX/PTXTargetMachine.cpp<br>
llvm/trunk/lib/Target/PowerPC/CMakeLists.txt<br>
llvm/trunk/lib/Target/PowerPC/MCTargetDesc/CMakeLists.txt<br>
llvm/trunk/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp<br>
llvm/trunk/lib/Target/PowerPC/PPCTargetMachine.cpp<br>
llvm/trunk/lib/Target/Sparc/CMakeLists.txt<br>
llvm/trunk/lib/Target/Sparc/MCTargetDesc/CMakeLists.txt<br>
llvm/trunk/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.cpp<br>
llvm/trunk/lib/Target/Sparc/SparcTargetMachine.cpp<br>
llvm/trunk/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp<br>
llvm/trunk/lib/Target/SystemZ/SystemZTargetMachine.cpp<br>
llvm/trunk/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp<br>
llvm/trunk/lib/Target/X86/X86MCInstLower.cpp<br>
llvm/trunk/lib/Target/X86/X86TargetMachine.cpp<br>
llvm/trunk/lib/Target/XCore/MCTargetDesc/XCoreMCTargetDesc.cpp<br>
llvm/trunk/lib/Target/XCore/XCoreAsmPrinter.cpp<br>
llvm/trunk/lib/Target/XCore/XCoreTargetMachine.cpp<br>
llvm/trunk/tools/llc/llc.cpp<br>
llvm/trunk/tools/llvm-mc/Disassembler.cpp<br>
llvm/trunk/tools/llvm-mc/llvm-mc.cpp<br>
llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp<br>
llvm/trunk/tools/lto/LTOCodeGenerator.cpp<br>
llvm/trunk/tools/lto/LTOModule.cpp<br>
<br>
Modified: llvm/trunk/autoconf/<a href="http://configure.ac/" target="_blank">configure.ac</a><br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/autoconf/configure.ac?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/autoconf/configure.ac?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/autoconf/<a href="http://configure.ac/" target="_blank">configure.ac</a> (original)<br>
+++ llvm/trunk/autoconf/<a href="http://configure.ac/" target="_blank">configure.ac</a> Thu Jul 14 18:50:31 2011<br>
@@ -658,6 +658,7 @@<br>
[LLVM architecture name for the native architecture, if available])<br>
LLVM_NATIVE_TARGET="LLVMInitialize${LLVM_NATIVE_ARCH}Target"<br>
LLVM_NATIVE_TARGETINFO="LLVMInitialize${LLVM_NATIVE_ARCH}TargetInfo"<br>
+ LLVM_NATIVE_MCASMINFO="LLVMInitialize${LLVM_NATIVE_ARCH}MCAsmInfo"<br>
LLVM_NATIVE_ASMPRINTER="LLVMInitialize${LLVM_NATIVE_ARCH}AsmPrinter"<br>
if test -f ${srcdir}/lib/Target/${LLVM_NATIVE_ARCH}/AsmParser/Makefile ; then<br>
LLVM_NATIVE_ASMPARSER="LLVMInitialize${LLVM_NATIVE_ARCH}AsmParser"<br>
@@ -666,6 +667,8 @@<br>
[LLVM name for the native Target init function, if available])<br>
AC_DEFINE_UNQUOTED(LLVM_NATIVE_TARGETINFO, $LLVM_NATIVE_TARGETINFO,<br>
[LLVM name for the native TargetInfo init function, if available])<br>
+ AC_DEFINE_UNQUOTED(LLVM_NATIVE_MCASMINFO, $LLVM_NATIVE_MCASMINFO,<br>
+ [LLVM name for the native MCAsmInfo init function, if available])<br>
AC_DEFINE_UNQUOTED(LLVM_NATIVE_ASMPRINTER, $LLVM_NATIVE_ASMPRINTER,<br>
[LLVM name for the native AsmPrinter init function, if available])<br>
if test -f ${srcdir}/lib/Target/${LLVM_NATIVE_ARCH}/AsmParser/Makefile ; then<br>
<br>
Modified: llvm/trunk/cmake/config-ix.cmake<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/cmake/config-ix.cmake?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/cmake/config-ix.cmake?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/cmake/config-ix.cmake (original)<br>
+++ llvm/trunk/cmake/config-ix.cmake Thu Jul 14 18:50:31 2011<br>
@@ -336,6 +336,7 @@<br>
message(STATUS "Native target architecture is ${LLVM_NATIVE_ARCH}")<br>
set(LLVM_NATIVE_TARGET LLVMInitialize${LLVM_NATIVE_ARCH}Target)<br>
set(LLVM_NATIVE_TARGETINFO LLVMInitialize${LLVM_NATIVE_ARCH}TargetInfo)<br>
+ set(LLVM_NATIVE_MCASMINFO LLVMInitialize${LLVM_NATIVE_ARCH}MCAsmInfo)<br>
set(LLVM_NATIVE_ASMPRINTER LLVMInitialize${LLVM_NATIVE_ARCH}AsmPrinter)<br>
endif ()<br>
<br>
<br>
Modified: llvm/trunk/configure<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/configure?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/configure?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/configure (original)<br>
+++ llvm/trunk/configure Thu Jul 14 18:50:31 2011<br>
@@ -5120,6 +5120,7 @@<br>
<br>
LLVM_NATIVE_TARGET="LLVMInitialize${LLVM_NATIVE_ARCH}Target"<br>
LLVM_NATIVE_TARGETINFO="LLVMInitialize${LLVM_NATIVE_ARCH}TargetInfo"<br>
+ LLVM_NATIVE_MCASMINFO="LLVMInitialize${LLVM_NATIVE_ARCH}MCAsmInfo"<br>
LLVM_NATIVE_ASMPRINTER="LLVMInitialize${LLVM_NATIVE_ARCH}AsmPrinter"<br>
if test -f ${srcdir}/lib/Target/${LLVM_NATIVE_ARCH}/AsmParser/Makefile ; then<br>
LLVM_NATIVE_ASMPARSER="LLVMInitialize${LLVM_NATIVE_ARCH}AsmParser"<br>
@@ -5136,6 +5137,11 @@<br>
<br>
<br>
cat >>confdefs.h <<_ACEOF<br>
+#define LLVM_NATIVE_MCASMINFO $LLVM_NATIVE_MCASMINFO<br>
+_ACEOF<br>
+<br>
+<br>
+cat >>confdefs.h <<_ACEOF<br>
#define LLVM_NATIVE_ASMPRINTER $LLVM_NATIVE_ASMPRINTER<br>
_ACEOF<br>
<br>
<br>
Modified: llvm/trunk/include/llvm-c/Target.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm-c/Target.h?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm-c/Target.h?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/include/llvm-c/Target.h (original)<br>
+++ llvm/trunk/include/llvm-c/Target.h Thu Jul 14 18:50:31 2011<br>
@@ -41,6 +41,11 @@<br>
#include "llvm/Config/Targets.def"<br>
#undef LLVM_TARGET /* Explicit undef to make SWIG happier */<br>
<br>
+#define LLVM_TARGET(TargetName) \<br>
+ void LLVMInitialize##TargetName##MCAsmInfo(void);<br>
+#include "llvm/Config/Targets.def"<br>
+#undef LLVM_TARGET /* Explicit undef to make SWIG happier */<br>
+<br>
/** LLVMInitializeAllTargetInfos - The main program should call this function if<br>
it wants access to all available targets that LLVM is configured to<br>
support. */<br>
@@ -67,6 +72,7 @@<br>
#ifdef LLVM_NATIVE_TARGET<br>
LLVM_NATIVE_TARGETINFO();<br>
LLVM_NATIVE_TARGET();<br>
+ LLVM_NATIVE_MCASMINFO();<br>
return 0;<br>
#else<br>
return 1;<br>
<br>
Modified: llvm/trunk/include/llvm/Config/config.h.cmake<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Config/config.h.cmake?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Config/config.h.cmake?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/include/llvm/Config/config.h.cmake (original)<br>
+++ llvm/trunk/include/llvm/Config/config.h.cmake Thu Jul 14 18:50:31 2011<br>
@@ -557,6 +557,9 @@<br>
/* LLVM name for the native TargetInfo init function, if available */<br>
#cmakedefine LLVM_NATIVE_TARGETINFO LLVMInitialize${LLVM_NATIVE_ARCH}TargetInfo<br>
<br>
+/* LLVM name for the native MCAsmInfo init function, if available */<br>
+#cmakedefine LLVM_NATIVE_MCASMINFO LLVMInitialize${LLVM_NATIVE_ARCH}MCAsmInfo<br>
+<br>
/* Define if this is Unixish platform */<br>
#cmakedefine LLVM_ON_UNIX ${LLVM_ON_UNIX}<br>
<br>
<br>
Modified: llvm/trunk/include/llvm/Config/<a href="http://config.h.in/" target="_blank">config.h.in</a><br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Config/config.h.in?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Config/config.h.in?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/include/llvm/Config/<a href="http://config.h.in/" target="_blank">config.h.in</a> (original)<br>
+++ llvm/trunk/include/llvm/Config/<a href="http://config.h.in/" target="_blank">config.h.in</a> Thu Jul 14 18:50:31 2011<br>
@@ -573,6 +573,9 @@<br>
/* LLVM name for the native AsmPrinter init function, if available */<br>
#undef LLVM_NATIVE_ASMPRINTER<br>
<br>
+/* LLVM name for the native MCAsmInfo init function, if available */<br>
+#undef LLVM_NATIVE_MCASMINFO<br>
+<br>
/* LLVM name for the native Target init function, if available */<br>
#undef LLVM_NATIVE_TARGET<br>
<br>
<br>
Modified: llvm/trunk/include/llvm/Config/llvm-config.h.cmake<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Config/llvm-config.h.cmake?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Config/llvm-config.h.cmake?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/include/llvm/Config/llvm-config.h.cmake (original)<br>
+++ llvm/trunk/include/llvm/Config/llvm-config.h.cmake Thu Jul 14 18:50:31 2011<br>
@@ -58,6 +58,9 @@<br>
/* LLVM name for the native TargetInfo init function, if available */<br>
#cmakedefine LLVM_NATIVE_TARGETINFO LLVMInitialize${LLVM_NATIVE_ARCH}TargetInfo<br>
<br>
+/* LLVM name for the native MCAsmInfo init function, if available */<br>
+#cmakedefine LLVM_NATIVE_MCASMINFO LLVMInitialize${LLVM_NATIVE_ARCH}MCAsmInfo<br>
+<br>
/* LLVM name for the native AsmPrinter init function, if available */<br>
#cmakedefine LLVM_NATIVE_ASMPRINTER LLVMInitialize${LLVM_NATIVE_ARCH}AsmPrinter<br>
<br>
<br>
Modified: llvm/trunk/include/llvm/Config/<a href="http://llvm-config.h.in/" target="_blank">llvm-config.h.in</a><br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Config/llvm-config.h.in?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Config/llvm-config.h.in?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/include/llvm/Config/<a href="http://llvm-config.h.in/" target="_blank">llvm-config.h.in</a> (original)<br>
+++ llvm/trunk/include/llvm/Config/<a href="http://llvm-config.h.in/" target="_blank">llvm-config.h.in</a> Thu Jul 14 18:50:31 2011<br>
@@ -58,6 +58,9 @@<br>
/* LLVM name for the native TargetInfo init function, if available */<br>
#undef LLVM_NATIVE_TARGETINFO<br>
<br>
+/* LLVM name for the native MCAsmInfo init function, if available */<br>
+#undef LLVM_NATIVE_MCASMINFO<br>
+<br>
/* LLVM name for the native AsmPrinter init function, if available */<br>
#undef LLVM_NATIVE_ASMPRINTER<br>
<br>
<br>
Modified: llvm/trunk/include/llvm/Target/TargetRegistry.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Target/TargetRegistry.h?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Target/TargetRegistry.h?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/include/llvm/Target/TargetRegistry.h (original)<br>
+++ llvm/trunk/include/llvm/Target/TargetRegistry.h Thu Jul 14 18:50:31 2011<br>
@@ -66,8 +66,8 @@<br>
<br>
typedef unsigned (*TripleMatchQualityFnTy)(const std::string &TT);<br>
<br>
- typedef MCAsmInfo *(*AsmInfoCtorFnTy)(const Target &T,<br>
- StringRef TT);<br>
+ typedef MCAsmInfo *(*MCAsmInfoCtorFnTy)(const Target &T,<br>
+ StringRef TT);<br>
typedef MCInstrInfo *(*MCInstrInfoCtorFnTy)(void);<br>
typedef MCRegisterInfo *(*MCRegInfoCtorFnTy)(void);<br>
typedef MCSubtargetInfo *(*MCSubtargetInfoCtorFnTy)(StringRef TT,<br>
@@ -128,9 +128,9 @@<br>
/// HasJIT - Whether this target supports the JIT.<br>
bool HasJIT;<br>
<br>
- /// AsmInfoCtorFn - Constructor function for this target's MCAsmInfo, if<br>
+ /// MCAsmInfoCtorFn - Constructor function for this target's MCAsmInfo, if<br>
/// registered.<br>
- AsmInfoCtorFnTy AsmInfoCtorFn;<br>
+ MCAsmInfoCtorFnTy MCAsmInfoCtorFn;<br>
<br>
/// MCInstrInfoCtorFn - Constructor function for this target's MCInstrInfo,<br>
/// if registered.<br>
@@ -240,17 +240,17 @@<br>
/// @name Feature Constructors<br>
/// @{<br>
<br>
- /// createAsmInfo - Create a MCAsmInfo implementation for the specified<br>
+ /// createMCAsmInfo - Create a MCAsmInfo implementation for the specified<br>
/// target triple.<br>
///<br>
/// \arg Triple - This argument is used to determine the target machine<br>
/// feature set; it should always be provided. Generally this should be<br>
/// either the target triple from the module, or the target triple of the<br>
/// host if that does not exist.<br>
- MCAsmInfo *createAsmInfo(StringRef Triple) const {<br>
- if (!AsmInfoCtorFn)<br>
+ MCAsmInfo *createMCAsmInfo(StringRef Triple) const {<br>
+ if (!MCAsmInfoCtorFn)<br>
return 0;<br>
- return AsmInfoCtorFn(*this, Triple);<br>
+ return MCAsmInfoCtorFn(*this, Triple);<br>
}<br>
<br>
/// createMCInstrInfo - Create a MCInstrInfo implementation.<br>
@@ -485,7 +485,7 @@<br>
Target::TripleMatchQualityFnTy TQualityFn,<br>
bool HasJIT = false);<br>
<br>
- /// RegisterAsmInfo - Register a MCAsmInfo implementation for the<br>
+ /// RegisterMCAsmInfo - Register a MCAsmInfo implementation for the<br>
/// given target.<br>
///<br>
/// Clients are responsible for ensuring that registration doesn't occur<br>
@@ -494,10 +494,10 @@<br>
///<br>
/// @param T - The target being registered.<br>
/// @param Fn - A function to construct a MCAsmInfo for the target.<br>
- static void RegisterAsmInfo(Target &T, Target::AsmInfoCtorFnTy Fn) {<br>
+ static void RegisterMCAsmInfo(Target &T, Target::MCAsmInfoCtorFnTy Fn) {<br>
// Ignore duplicate registration.<br>
- if (!T.AsmInfoCtorFn)<br>
- T.AsmInfoCtorFn = Fn;<br>
+ if (!T.MCAsmInfoCtorFn)<br>
+ T.MCAsmInfoCtorFn = Fn;<br>
}<br>
<br>
/// RegisterMCInstrInfo - Register a MCInstrInfo implementation for the<br>
@@ -722,18 +722,18 @@<br>
}<br>
};<br>
<br>
- /// RegisterAsmInfo - Helper template for registering a target assembly info<br>
+ /// RegisterMCAsmInfo - Helper template for registering a target assembly info<br>
/// implementation. This invokes the static "Create" method on the class to<br>
/// actually do the construction. Usage:<br>
///<br>
/// extern "C" void LLVMInitializeFooTarget() {<br>
/// extern Target TheFooTarget;<br>
- /// RegisterAsmInfo<FooMCAsmInfo> X(TheFooTarget);<br>
+ /// RegisterMCAsmInfo<FooMCAsmInfo> X(TheFooTarget);<br>
/// }<br>
template<class MCAsmInfoImpl><br>
- struct RegisterAsmInfo {<br>
- RegisterAsmInfo(Target &T) {<br>
- TargetRegistry::RegisterAsmInfo(T, &Allocator);<br>
+ struct RegisterMCAsmInfo {<br>
+ RegisterMCAsmInfo(Target &T) {<br>
+ TargetRegistry::RegisterMCAsmInfo(T, &Allocator);<br>
}<br>
private:<br>
static MCAsmInfo *Allocator(const Target &T, StringRef TT) {<br>
@@ -742,17 +742,17 @@<br>
<br>
};<br>
<br>
- /// RegisterAsmInfoFn - Helper template for registering a target assembly info<br>
+ /// RegisterMCAsmInfoFn - Helper template for registering a target assembly info<br>
/// implementation. This invokes the specified function to do the<br>
/// construction. Usage:<br>
///<br>
/// extern "C" void LLVMInitializeFooTarget() {<br>
/// extern Target TheFooTarget;<br>
- /// RegisterAsmInfoFn X(TheFooTarget, TheFunction);<br>
+ /// RegisterMCAsmInfoFn X(TheFooTarget, TheFunction);<br>
/// }<br>
- struct RegisterAsmInfoFn {<br>
- RegisterAsmInfoFn(Target &T, Target::AsmInfoCtorFnTy Fn) {<br>
- TargetRegistry::RegisterAsmInfo(T, Fn);<br>
+ struct RegisterMCAsmInfoFn {<br>
+ RegisterMCAsmInfoFn(Target &T, Target::MCAsmInfoCtorFnTy Fn) {<br>
+ TargetRegistry::RegisterMCAsmInfo(T, Fn);<br>
}<br>
};<br>
<br>
<br>
Modified: llvm/trunk/include/llvm/Target/TargetSelect.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Target/TargetSelect.h?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Target/TargetSelect.h?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/include/llvm/Target/TargetSelect.h (original)<br>
+++ llvm/trunk/include/llvm/Target/TargetSelect.h Thu Jul 14 18:50:31 2011<br>
@@ -27,6 +27,10 @@<br>
#include "llvm/Config/Targets.def"<br>
<br>
#define LLVM_TARGET(TargetName) \<br>
+ void LLVMInitialize##TargetName##MCAsmInfo();<br>
+#include "llvm/Config/Targets.def"<br>
+<br>
+#define LLVM_TARGET(TargetName) \<br>
void LLVMInitialize##TargetName##MCInstrInfo();<br>
#include "llvm/Config/Targets.def"<br>
<br>
@@ -72,6 +76,17 @@<br>
#include "llvm/Config/Targets.def"<br>
}<br>
<br>
+ /// InitializeAllMCAsmInfos - The main program should call this function<br>
+ /// if it wants access to all available assembly infos for targets that<br>
+ /// LLVM is configured to support, to make them available via the<br>
+ /// TargetRegistry.<br>
+ ///<br>
+ /// It is legal for a client to make multiple calls to this function.<br>
+ inline void InitializeAllMCAsmInfos() {<br>
+#define LLVM_TARGET(TargetName) LLVMInitialize##TargetName##MCAsmInfo();<br>
+#include "llvm/Config/Targets.def"<br>
+ }<br>
+<br>
/// InitializeAllMCInstrInfos - The main program should call this function<br>
/// if it wants access to all available instruction infos for targets that<br>
/// LLVM is configured to support, to make them available via the<br>
@@ -133,6 +148,7 @@<br>
#ifdef LLVM_NATIVE_TARGET<br>
LLVM_NATIVE_TARGETINFO();<br>
LLVM_NATIVE_TARGET();<br>
+ LLVM_NATIVE_MCASMINFO();<br>
return false;<br>
#else<br>
return true;<br>
<br>
Modified: llvm/trunk/lib/CodeGen/LLVMTargetMachine.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/LLVMTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/LLVMTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/CodeGen/LLVMTargetMachine.cpp (original)<br>
+++ llvm/trunk/lib/CodeGen/LLVMTargetMachine.cpp Thu Jul 14 18:50:31 2011<br>
@@ -105,7 +105,7 @@<br>
LLVMTargetMachine::LLVMTargetMachine(const Target &T, StringRef Triple,<br>
StringRef CPU, StringRef FS)<br>
: TargetMachine(T, Triple, CPU, FS) {<br>
- AsmInfo = T.createAsmInfo(Triple);<br>
+ AsmInfo = T.createMCAsmInfo(Triple);<br>
}<br>
<br>
// Set the default code model for the JIT for a generic target.<br>
<br>
Modified: llvm/trunk/lib/MC/MCDisassembler/Disassembler.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/MCDisassembler/Disassembler.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/MCDisassembler/Disassembler.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/MC/MCDisassembler/Disassembler.cpp (original)<br>
+++ llvm/trunk/lib/MC/MCDisassembler/Disassembler.cpp Thu Jul 14 18:50:31 2011<br>
@@ -40,6 +40,7 @@<br>
llvm::InitializeAllTargetInfos();<br>
// FIXME: We shouldn't need to initialize the Target(Machine)s.<br>
llvm::InitializeAllTargets();<br>
+ llvm::InitializeAllMCAsmInfos();<br>
llvm::InitializeAllAsmPrinters();<br>
llvm::InitializeAllAsmParsers();<br>
llvm::InitializeAllDisassemblers();<br>
@@ -50,7 +51,7 @@<br>
assert(TheTarget && "Unable to create target!");<br>
<br>
// Get the assembler info needed to setup the MCContext.<br>
- const MCAsmInfo *MAI = TheTarget->createAsmInfo(TripleName);<br>
+ const MCAsmInfo *MAI = TheTarget->createMCAsmInfo(TripleName);<br>
assert(MAI && "Unable to create target asm info!");<br>
<br>
// Package up features to be passed to target/subtarget<br>
<br>
Modified: llvm/trunk/lib/MC/MCDisassembler/EDDisassembler.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/MCDisassembler/EDDisassembler.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/MCDisassembler/EDDisassembler.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/MC/MCDisassembler/EDDisassembler.cpp (original)<br>
+++ llvm/trunk/lib/MC/MCDisassembler/EDDisassembler.cpp Thu Jul 14 18:50:31 2011<br>
@@ -107,6 +107,7 @@<br>
<br>
InitializeAllTargetInfos();<br>
InitializeAllTargets();<br>
+ InitializeAllMCAsmInfos();<br>
InitializeAllAsmPrinters();<br>
InitializeAllAsmParsers();<br>
InitializeAllDisassemblers();<br>
@@ -180,7 +181,7 @@<br>
<br>
initMaps(*registerInfo);<br>
<br>
- AsmInfo.reset(Tgt->createAsmInfo(tripleString));<br>
+ AsmInfo.reset(Tgt->createMCAsmInfo(tripleString));<br>
<br>
if (!AsmInfo)<br>
return;<br>
<br>
Removed: llvm/trunk/lib/Target/ARM/ARMMCAsmInfo.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMMCAsmInfo.cpp?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMMCAsmInfo.cpp?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/ARM/ARMMCAsmInfo.cpp (original)<br>
+++ llvm/trunk/lib/Target/ARM/ARMMCAsmInfo.cpp (removed)<br>
@@ -1,78 +0,0 @@<br>
-//===-- ARMMCAsmInfo.cpp - ARM asm properties -------------------*- C++ -*-===//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declarations of the ARMMCAsmInfo properties.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#include "ARMMCAsmInfo.h"<br>
-#include "llvm/Support/CommandLine.h"<br>
-<br>
-using namespace llvm;<br>
-<br>
-cl::opt<bool><br>
-EnableARMEHABI("arm-enable-ehabi", cl::Hidden,<br>
- cl::desc("Generate ARM EHABI tables"),<br>
- cl::init(false));<br>
-<br>
-<br>
-static const char *const arm_asm_table[] = {<br>
- "{r0}", "r0",<br>
- "{r1}", "r1",<br>
- "{r2}", "r2",<br>
- "{r3}", "r3",<br>
- "{r4}", "r4",<br>
- "{r5}", "r5",<br>
- "{r6}", "r6",<br>
- "{r7}", "r7",<br>
- "{r8}", "r8",<br>
- "{r9}", "r9",<br>
- "{r10}", "r10",<br>
- "{r11}", "r11",<br>
- "{r12}", "r12",<br>
- "{r13}", "r13",<br>
- "{r14}", "r14",<br>
- "{lr}", "lr",<br>
- "{sp}", "sp",<br>
- "{ip}", "ip",<br>
- "{fp}", "fp",<br>
- "{sl}", "sl",<br>
- "{memory}", "memory",<br>
- "{cc}", "cc",<br>
- 0,0<br>
-};<br>
-<br>
-ARMMCAsmInfoDarwin::ARMMCAsmInfoDarwin() {<br>
- AsmTransCBE = arm_asm_table;<br>
- Data64bitsDirective = 0;<br>
- CommentString = "@";<br>
- SupportsDebugInformation = true;<br>
-<br>
- // Exceptions handling<br>
- ExceptionsType = ExceptionHandling::SjLj;<br>
-}<br>
-<br>
-ARMELFMCAsmInfo::ARMELFMCAsmInfo() {<br>
- // ".comm align is in bytes but .align is pow-2."<br>
- AlignmentIsInBytes = false;<br>
-<br>
- Data64bitsDirective = 0;<br>
- CommentString = "@";<br>
-<br>
- HasLEB128 = true;<br>
- PrivateGlobalPrefix = ".L";<br>
- WeakRefDirective = "\t.weak\t";<br>
- HasLCOMMDirective = true;<br>
-<br>
- SupportsDebugInformation = true;<br>
-<br>
- // Exceptions handling<br>
- if (EnableARMEHABI)<br>
- ExceptionsType = ExceptionHandling::ARM;<br>
-}<br>
<br>
Removed: llvm/trunk/lib/Target/ARM/ARMMCAsmInfo.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMMCAsmInfo.h?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMMCAsmInfo.h?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/ARM/ARMMCAsmInfo.h (original)<br>
+++ llvm/trunk/lib/Target/ARM/ARMMCAsmInfo.h (removed)<br>
@@ -1,31 +0,0 @@<br>
-//=====-- ARMMCAsmInfo.h - ARM asm properties -------------*- C++ -*--====//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declaration of the ARMMCAsmInfo class.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#ifndef LLVM_ARMTARGETASMINFO_H<br>
-#define LLVM_ARMTARGETASMINFO_H<br>
-<br>
-#include "llvm/MC/MCAsmInfoDarwin.h"<br>
-<br>
-namespace llvm {<br>
-<br>
- struct ARMMCAsmInfoDarwin : public MCAsmInfoDarwin {<br>
- explicit ARMMCAsmInfoDarwin();<br>
- };<br>
-<br>
- struct ARMELFMCAsmInfo : public MCAsmInfo {<br>
- explicit ARMELFMCAsmInfo();<br>
- };<br>
-<br>
-} // namespace llvm<br>
-<br>
-#endif<br>
<br>
Modified: llvm/trunk/lib/Target/ARM/ARMTargetMachine.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/ARM/ARMTargetMachine.cpp (original)<br>
+++ llvm/trunk/lib/Target/ARM/ARMTargetMachine.cpp Thu Jul 14 18:50:31 2011<br>
@@ -11,7 +11,6 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "ARMTargetMachine.h"<br>
-#include "ARMMCAsmInfo.h"<br>
#include "ARMFrameLowering.h"<br>
#include "ARM.h"<br>
#include "llvm/PassManager.h"<br>
@@ -22,15 +21,6 @@<br>
#include "llvm/Target/TargetRegistry.h"<br>
using namespace llvm;<br>
<br>
-static MCAsmInfo *createMCAsmInfo(const Target &T, StringRef TT) {<br>
- Triple TheTriple(TT);<br>
-<br>
- if (TheTriple.isOSDarwin())<br>
- return new ARMMCAsmInfoDarwin();<br>
-<br>
- return new ARMELFMCAsmInfo();<br>
-}<br>
-<br>
// This is duplicated code. Refactor this.<br>
static MCStreamer *createMCStreamer(const Target &T, const std::string &TT,<br>
MCContext &Ctx, TargetAsmBackend &TAB,<br>
@@ -56,10 +46,6 @@<br>
RegisterTargetMachine<ARMTargetMachine> X(TheARMTarget);<br>
RegisterTargetMachine<ThumbTargetMachine> Y(TheThumbTarget);<br>
<br>
- // Register the target asm info.<br>
- RegisterAsmInfoFn A(TheARMTarget, createMCAsmInfo);<br>
- RegisterAsmInfoFn B(TheThumbTarget, createMCAsmInfo);<br>
-<br>
// Register the MC Code Emitter<br>
TargetRegistry::RegisterCodeEmitter(TheARMTarget, createARMMCCodeEmitter);<br>
TargetRegistry::RegisterCodeEmitter(TheThumbTarget, createARMMCCodeEmitter);<br>
<br>
Modified: llvm/trunk/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp (original)<br>
+++ llvm/trunk/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp Thu Jul 14 18:50:31 2011<br>
@@ -12,6 +12,7 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "ARMMCTargetDesc.h"<br>
+#include "ARMMCAsmInfo.h"<br>
#include "llvm/MC/MCInstrInfo.h"<br>
#include "llvm/MC/MCRegisterInfo.h"<br>
#include "llvm/MC/MCSubtargetInfo.h"<br>
@@ -97,32 +98,47 @@<br>
return X;<br>
}<br>
<br>
-MCInstrInfo *createARMMCInstrInfo() {<br>
- MCInstrInfo *X = new MCInstrInfo();<br>
- InitARMMCInstrInfo(X);<br>
- return X;<br>
+// Force static initialization.<br>
+extern "C" void LLVMInitializeARMMCSubtargetInfo() {<br>
+ TargetRegistry::RegisterMCSubtargetInfo(TheARMTarget,<br>
+ ARM_MC::createARMMCSubtargetInfo);<br>
+ TargetRegistry::RegisterMCSubtargetInfo(TheThumbTarget,<br>
+ ARM_MC::createARMMCSubtargetInfo);<br>
}<br>
<br>
-MCRegisterInfo *createARMMCRegisterInfo() {<br>
- MCRegisterInfo *X = new MCRegisterInfo();<br>
- InitARMMCRegisterInfo(X);<br>
+static MCInstrInfo *createARMMCInstrInfo() {<br>
+ MCInstrInfo *X = new MCInstrInfo();<br>
+ InitARMMCInstrInfo(X);<br>
return X;<br>
}<br>
<br>
-// Force static initialization.<br>
extern "C" void LLVMInitializeARMMCInstrInfo() {<br>
TargetRegistry::RegisterMCInstrInfo(TheARMTarget, createARMMCInstrInfo);<br>
TargetRegistry::RegisterMCInstrInfo(TheThumbTarget, createARMMCInstrInfo);<br>
}<br>
<br>
+static MCRegisterInfo *createARMMCRegisterInfo() {<br>
+ MCRegisterInfo *X = new MCRegisterInfo();<br>
+ InitARMMCRegisterInfo(X);<br>
+ return X;<br>
+}<br>
+<br>
extern "C" void LLVMInitializeARMMCRegInfo() {<br>
TargetRegistry::RegisterMCRegInfo(TheARMTarget, createARMMCRegisterInfo);<br>
TargetRegistry::RegisterMCRegInfo(TheThumbTarget, createARMMCRegisterInfo);<br>
}<br>
<br>
-extern "C" void LLVMInitializeARMMCSubtargetInfo() {<br>
- TargetRegistry::RegisterMCSubtargetInfo(TheARMTarget,<br>
- ARM_MC::createARMMCSubtargetInfo);<br>
- TargetRegistry::RegisterMCSubtargetInfo(TheThumbTarget,<br>
- ARM_MC::createARMMCSubtargetInfo);<br>
+static MCAsmInfo *createMCAsmInfo(const Target &T, StringRef TT) {<br>
+ Triple TheTriple(TT);<br>
+<br>
+ if (TheTriple.isOSDarwin())<br>
+ return new ARMMCAsmInfoDarwin();<br>
+<br>
+ return new ARMELFMCAsmInfo();<br>
+}<br>
+<br>
+extern "C" void LLVMInitializeARMMCAsmInfo() {<br>
+ // Register the target asm info.<br>
+ RegisterMCAsmInfoFn A(TheARMTarget, createMCAsmInfo);<br>
+ RegisterMCAsmInfoFn B(TheThumbTarget, createMCAsmInfo);<br>
}<br>
<br>
Removed: llvm/trunk/lib/Target/Alpha/AlphaMCAsmInfo.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Alpha/AlphaMCAsmInfo.cpp?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Alpha/AlphaMCAsmInfo.cpp?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Alpha/AlphaMCAsmInfo.cpp (original)<br>
+++ llvm/trunk/lib/Target/Alpha/AlphaMCAsmInfo.cpp (removed)<br>
@@ -1,23 +0,0 @@<br>
-//===-- AlphaMCAsmInfo.cpp - Alpha asm properties ---------------*- C++ -*-===//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declarations of the AlphaMCAsmInfo properties.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#include "AlphaMCAsmInfo.h"<br>
-using namespace llvm;<br>
-<br>
-AlphaMCAsmInfo::AlphaMCAsmInfo(const Target &T, StringRef TT) {<br>
- AlignmentIsInBytes = false;<br>
- PrivateGlobalPrefix = "$";<br>
- GPRel32Directive = ".gprel32";<br>
- WeakRefDirective = "\t.weak\t";<br>
- HasSetDirective = false;<br>
-}<br>
<br>
Removed: llvm/trunk/lib/Target/Alpha/AlphaMCAsmInfo.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Alpha/AlphaMCAsmInfo.h?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Alpha/AlphaMCAsmInfo.h?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Alpha/AlphaMCAsmInfo.h (original)<br>
+++ llvm/trunk/lib/Target/Alpha/AlphaMCAsmInfo.h (removed)<br>
@@ -1,29 +0,0 @@<br>
-//=====-- AlphaMCAsmInfo.h - Alpha asm properties -------------*- C++ -*--====//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declaration of the AlphaMCAsmInfo class.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#ifndef ALPHATARGETASMINFO_H<br>
-#define ALPHATARGETASMINFO_H<br>
-<br>
-#include "llvm/ADT/StringRef.h"<br>
-#include "llvm/MC/MCAsmInfo.h"<br>
-<br>
-namespace llvm {<br>
- class Target;<br>
-<br>
- struct AlphaMCAsmInfo : public MCAsmInfo {<br>
- explicit AlphaMCAsmInfo(const Target &T, StringRef TT);<br>
- };<br>
-<br>
-} // namespace llvm<br>
-<br>
-#endif<br>
<br>
Modified: llvm/trunk/lib/Target/Alpha/AlphaTargetMachine.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Alpha/AlphaTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Alpha/AlphaTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Alpha/AlphaTargetMachine.cpp (original)<br>
+++ llvm/trunk/lib/Target/Alpha/AlphaTargetMachine.cpp Thu Jul 14 18:50:31 2011<br>
@@ -11,7 +11,6 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "Alpha.h"<br>
-#include "AlphaMCAsmInfo.h"<br>
#include "AlphaTargetMachine.h"<br>
#include "llvm/PassManager.h"<br>
#include "llvm/Support/FormattedStream.h"<br>
@@ -21,7 +20,6 @@<br>
extern "C" void LLVMInitializeAlphaTarget() {<br>
// Register the target.<br>
RegisterTargetMachine<AlphaTargetMachine> X(TheAlphaTarget);<br>
- RegisterAsmInfo<AlphaMCAsmInfo> Y(TheAlphaTarget);<br>
}<br>
<br>
AlphaTargetMachine::AlphaTargetMachine(const Target &T, const std::string &TT,<br>
<br>
Modified: llvm/trunk/lib/Target/Alpha/MCTargetDesc/AlphaMCTargetDesc.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Alpha/MCTargetDesc/AlphaMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Alpha/MCTargetDesc/AlphaMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Alpha/MCTargetDesc/AlphaMCTargetDesc.cpp (original)<br>
+++ llvm/trunk/lib/Target/Alpha/MCTargetDesc/AlphaMCTargetDesc.cpp Thu Jul 14 18:50:31 2011<br>
@@ -12,6 +12,7 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "AlphaMCTargetDesc.h"<br>
+#include "AlphaMCAsmInfo.h"<br>
#include "llvm/MC/MCInstrInfo.h"<br>
#include "llvm/MC/MCRegisterInfo.h"<br>
#include "llvm/MC/MCSubtargetInfo.h"<br>
@@ -29,7 +30,7 @@<br>
using namespace llvm;<br>
<br>
<br>
-MCInstrInfo *createAlphaMCInstrInfo() {<br>
+static MCInstrInfo *createAlphaMCInstrInfo() {<br>
MCInstrInfo *X = new MCInstrInfo();<br>
InitAlphaMCInstrInfo(X);<br>
return X;<br>
@@ -39,9 +40,8 @@<br>
TargetRegistry::RegisterMCInstrInfo(TheAlphaTarget, createAlphaMCInstrInfo);<br>
}<br>
<br>
-<br>
-MCSubtargetInfo *createAlphaMCSubtargetInfo(StringRef TT, StringRef CPU,<br>
- StringRef FS) {<br>
+static MCSubtargetInfo *createAlphaMCSubtargetInfo(StringRef TT, StringRef CPU,<br>
+ StringRef FS) {<br>
MCSubtargetInfo *X = new MCSubtargetInfo();<br>
InitAlphaMCSubtargetInfo(X, TT, CPU, FS);<br>
return X;<br>
@@ -51,3 +51,7 @@<br>
TargetRegistry::RegisterMCSubtargetInfo(TheAlphaTarget,<br>
createAlphaMCSubtargetInfo);<br>
}<br>
+<br>
+extern "C" void LLVMInitializeAlphaMCAsmInfo() {<br>
+ RegisterMCAsmInfo<AlphaMCAsmInfo> X(TheAlphaTarget);<br>
+}<br>
<br>
Modified: llvm/trunk/lib/Target/Alpha/MCTargetDesc/CMakeLists.txt<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Alpha/MCTargetDesc/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Alpha/MCTargetDesc/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Alpha/MCTargetDesc/CMakeLists.txt (original)<br>
+++ llvm/trunk/lib/Target/Alpha/MCTargetDesc/CMakeLists.txt Thu Jul 14 18:50:31 2011<br>
@@ -1 +1,4 @@<br>
-add_llvm_library(LLVMAlphaDesc AlphaMCTargetDesc.cpp)<br>
+add_llvm_library(LLVMAlphaDesc<br>
+ AlphaMCTargetDesc.cpp<br>
+ AlphaMCAsmInfo.cpp<br>
+ )<br>
<br>
Removed: llvm/trunk/lib/Target/Blackfin/BlackfinMCAsmInfo.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Blackfin/BlackfinMCAsmInfo.cpp?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Blackfin/BlackfinMCAsmInfo.cpp?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Blackfin/BlackfinMCAsmInfo.cpp (original)<br>
+++ llvm/trunk/lib/Target/Blackfin/BlackfinMCAsmInfo.cpp (removed)<br>
@@ -1,22 +0,0 @@<br>
-//===-- BlackfinMCAsmInfo.cpp - Blackfin asm properties -------------------===//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declarations of the BlackfinMCAsmInfo properties.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#include "BlackfinMCAsmInfo.h"<br>
-<br>
-using namespace llvm;<br>
-<br>
-BlackfinMCAsmInfo::BlackfinMCAsmInfo(const Target &T, StringRef TT) {<br>
- GlobalPrefix = "_";<br>
- CommentString = "//";<br>
- HasSetDirective = false;<br>
-}<br>
<br>
Removed: llvm/trunk/lib/Target/Blackfin/BlackfinMCAsmInfo.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Blackfin/BlackfinMCAsmInfo.h?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Blackfin/BlackfinMCAsmInfo.h?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Blackfin/BlackfinMCAsmInfo.h (original)<br>
+++ llvm/trunk/lib/Target/Blackfin/BlackfinMCAsmInfo.h (removed)<br>
@@ -1,29 +0,0 @@<br>
-//===-- BlackfinMCAsmInfo.h - Blackfin asm properties ---------*- C++ -*--====//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declaration of the BlackfinMCAsmInfo class.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#ifndef BLACKFINTARGETASMINFO_H<br>
-#define BLACKFINTARGETASMINFO_H<br>
-<br>
-#include "llvm/ADT/StringRef.h"<br>
-#include "llvm/MC/MCAsmInfo.h"<br>
-<br>
-namespace llvm {<br>
- class Target;<br>
-<br>
- struct BlackfinMCAsmInfo : public MCAsmInfo {<br>
- explicit BlackfinMCAsmInfo(const Target &T, StringRef TT);<br>
- };<br>
-<br>
-} // namespace llvm<br>
-<br>
-#endif<br>
<br>
Modified: llvm/trunk/lib/Target/Blackfin/BlackfinTargetMachine.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Blackfin/BlackfinTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Blackfin/BlackfinTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Blackfin/BlackfinTargetMachine.cpp (original)<br>
+++ llvm/trunk/lib/Target/Blackfin/BlackfinTargetMachine.cpp Thu Jul 14 18:50:31 2011<br>
@@ -12,7 +12,6 @@<br>
<br>
#include "BlackfinTargetMachine.h"<br>
#include "Blackfin.h"<br>
-#include "BlackfinMCAsmInfo.h"<br>
#include "llvm/PassManager.h"<br>
#include "llvm/Target/TargetRegistry.h"<br>
<br>
@@ -20,8 +19,6 @@<br>
<br>
extern "C" void LLVMInitializeBlackfinTarget() {<br>
RegisterTargetMachine<BlackfinTargetMachine> X(TheBlackfinTarget);<br>
- RegisterAsmInfo<BlackfinMCAsmInfo> Y(TheBlackfinTarget);<br>
-<br>
}<br>
<br>
BlackfinTargetMachine::BlackfinTargetMachine(const Target &T,<br>
<br>
Modified: llvm/trunk/lib/Target/Blackfin/MCTargetDesc/BlackfinMCTargetDesc.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Blackfin/MCTargetDesc/BlackfinMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Blackfin/MCTargetDesc/BlackfinMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Blackfin/MCTargetDesc/BlackfinMCTargetDesc.cpp (original)<br>
+++ llvm/trunk/lib/Target/Blackfin/MCTargetDesc/BlackfinMCTargetDesc.cpp Thu Jul 14 18:50:31 2011<br>
@@ -12,6 +12,7 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "BlackfinMCTargetDesc.h"<br>
+#include "BlackfinMCAsmInfo.h"<br>
#include "llvm/MC/MCInstrInfo.h"<br>
#include "llvm/MC/MCRegisterInfo.h"<br>
#include "llvm/MC/MCSubtargetInfo.h"<br>
@@ -29,7 +30,7 @@<br>
using namespace llvm;<br>
<br>
<br>
-MCInstrInfo *createBlackfinMCInstrInfo() {<br>
+static MCInstrInfo *createBlackfinMCInstrInfo() {<br>
MCInstrInfo *X = new MCInstrInfo();<br>
InitBlackfinMCInstrInfo(X);<br>
return X;<br>
@@ -41,8 +42,9 @@<br>
}<br>
<br>
<br>
-MCSubtargetInfo *createBlackfinMCSubtargetInfo(StringRef TT, StringRef CPU,<br>
- StringRef FS) {<br>
+static MCSubtargetInfo *createBlackfinMCSubtargetInfo(StringRef TT,<br>
+ StringRef CPU,<br>
+ StringRef FS) {<br>
MCSubtargetInfo *X = new MCSubtargetInfo();<br>
InitBlackfinMCSubtargetInfo(X, TT, CPU, FS);<br>
return X;<br>
@@ -52,3 +54,7 @@<br>
TargetRegistry::RegisterMCSubtargetInfo(TheBlackfinTarget,<br>
createBlackfinMCSubtargetInfo);<br>
}<br>
+<br>
+extern "C" void LLVMInitializeBlackfinMCAsmInfo() {<br>
+ RegisterMCAsmInfo<BlackfinMCAsmInfo> X(TheBlackfinTarget);<br>
+}<br>
<br>
Modified: llvm/trunk/lib/Target/Blackfin/MCTargetDesc/CMakeLists.txt<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Blackfin/MCTargetDesc/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Blackfin/MCTargetDesc/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Blackfin/MCTargetDesc/CMakeLists.txt (original)<br>
+++ llvm/trunk/lib/Target/Blackfin/MCTargetDesc/CMakeLists.txt Thu Jul 14 18:50:31 2011<br>
@@ -1 +1,4 @@<br>
-add_llvm_library(LLVMBlackfinDesc BlackfinMCTargetDesc.cpp)<br>
+add_llvm_library(LLVMBlackfinDesc<br>
+ BlackfinMCTargetDesc.cpp<br>
+ BlackfinMCAsmInfo.cpp<br>
+ )<br>
<br>
Modified: llvm/trunk/lib/Target/CBackend/CBackend.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/CBackend/CBackend.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/CBackend/CBackend.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/CBackend/CBackend.cpp (original)<br>
+++ llvm/trunk/lib/Target/CBackend/CBackend.cpp Thu Jul 14 18:50:31 2011<br>
@@ -62,13 +62,11 @@<br>
RegisterTargetMachine<CTargetMachine> X(TheCBackendTarget);<br>
}<br>
<br>
-extern "C" void LLVMInitializeCBackendMCInstrInfo() {<br>
- RegisterMCInstrInfo<MCInstrInfo> X(TheCBackendTarget);<br>
-}<br>
+extern "C" void LLVMInitializeCBackendMCAsmInfo() {}<br>
<br>
-extern "C" void LLVMInitializeCBackendMCSubtargetInfo() {<br>
- RegisterMCSubtargetInfo<MCSubtargetInfo> X(TheCBackendTarget);<br>
-}<br>
+extern "C" void LLVMInitializeCBackendMCInstrInfo() {}<br>
+<br>
+extern "C" void LLVMInitializeCBackendMCSubtargetInfo() {}<br>
<br>
namespace {<br>
class CBEMCAsmInfo : public MCAsmInfo {<br>
@@ -1664,7 +1662,7 @@<br>
<br>
std::string E;<br>
if (const Target *Match = TargetRegistry::lookupTarget(Triple, E))<br>
- TAsm = Match->createAsmInfo(Triple);<br>
+ TAsm = Match->createMCAsmInfo(Triple);<br>
#endif<br>
TAsm = new CBEMCAsmInfo();<br>
TCtx = new MCContext(*TAsm, NULL);<br>
@@ -3167,7 +3165,7 @@<br>
<br>
std::string E;<br>
if (const Target *Match = TargetRegistry::lookupTarget(Triple, E))<br>
- TargetAsm = Match->createAsmInfo(Triple);<br>
+ TargetAsm = Match->createMCAsmInfo(Triple);<br>
else<br>
return c.Codes[0];<br>
<br>
<br>
Modified: llvm/trunk/lib/Target/CellSPU/CMakeLists.txt<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/CellSPU/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/CellSPU/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/CellSPU/CMakeLists.txt (original)<br>
+++ llvm/trunk/lib/Target/CellSPU/CMakeLists.txt Thu Jul 14 18:50:31 2011<br>
@@ -15,7 +15,6 @@<br>
SPUISelDAGToDAG.cpp<br>
SPUISelLowering.cpp<br>
SPUFrameLowering.cpp<br>
- SPUMCAsmInfo.cpp<br>
SPURegisterInfo.cpp<br>
SPUSubtarget.cpp<br>
SPUTargetMachine.cpp<br>
<br>
Modified: llvm/trunk/lib/Target/CellSPU/MCTargetDesc/CMakeLists.txt<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/CellSPU/MCTargetDesc/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/CellSPU/MCTargetDesc/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/CellSPU/MCTargetDesc/CMakeLists.txt (original)<br>
+++ llvm/trunk/lib/Target/CellSPU/MCTargetDesc/CMakeLists.txt Thu Jul 14 18:50:31 2011<br>
@@ -1 +1,4 @@<br>
-add_llvm_library(LLVMCellSPUDesc SPUMCTargetDesc.cpp)<br>
+add_llvm_library(LLVMCellSPUDesc<br>
+ SPUMCTargetDesc.cpp<br>
+ SPUMCAsmInfo.cpp<br>
+ )<br>
<br>
Modified: llvm/trunk/lib/Target/CellSPU/MCTargetDesc/SPUMCTargetDesc.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/CellSPU/MCTargetDesc/SPUMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/CellSPU/MCTargetDesc/SPUMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/CellSPU/MCTargetDesc/SPUMCTargetDesc.cpp (original)<br>
+++ llvm/trunk/lib/Target/CellSPU/MCTargetDesc/SPUMCTargetDesc.cpp Thu Jul 14 18:50:31 2011<br>
@@ -12,6 +12,7 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "SPUMCTargetDesc.h"<br>
+#include "SPUMCAsmInfo.h"<br>
#include "llvm/MC/MCInstrInfo.h"<br>
#include "llvm/MC/MCRegisterInfo.h"<br>
#include "llvm/MC/MCSubtargetInfo.h"<br>
@@ -28,7 +29,7 @@<br>
<br>
using namespace llvm;<br>
<br>
-MCInstrInfo *createSPUMCInstrInfo() {<br>
+static MCInstrInfo *createSPUMCInstrInfo() {<br>
MCInstrInfo *X = new MCInstrInfo();<br>
InitSPUMCInstrInfo(X);<br>
return X;<br>
@@ -38,8 +39,8 @@<br>
TargetRegistry::RegisterMCInstrInfo(TheCellSPUTarget, createSPUMCInstrInfo);<br>
}<br>
<br>
-MCSubtargetInfo *createSPUMCSubtargetInfo(StringRef TT, StringRef CPU,<br>
- StringRef FS) {<br>
+static MCSubtargetInfo *createSPUMCSubtargetInfo(StringRef TT, StringRef CPU,<br>
+ StringRef FS) {<br>
MCSubtargetInfo *X = new MCSubtargetInfo();<br>
InitSPUMCSubtargetInfo(X, TT, CPU, FS);<br>
return X;<br>
@@ -49,3 +50,7 @@<br>
TargetRegistry::RegisterMCSubtargetInfo(TheCellSPUTarget,<br>
createSPUMCSubtargetInfo);<br>
}<br>
+<br>
+extern "C" void LLVMInitializeCellSPUMCAsmInfo() {<br>
+ RegisterMCAsmInfo<SPULinuxMCAsmInfo> X(TheCellSPUTarget);<br>
+}<br>
<br>
Removed: llvm/trunk/lib/Target/CellSPU/SPUMCAsmInfo.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/CellSPU/SPUMCAsmInfo.cpp?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/CellSPU/SPUMCAsmInfo.cpp?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/CellSPU/SPUMCAsmInfo.cpp (original)<br>
+++ llvm/trunk/lib/Target/CellSPU/SPUMCAsmInfo.cpp (removed)<br>
@@ -1,39 +0,0 @@<br>
-//===-- SPUMCAsmInfo.cpp - Cell SPU asm properties ------------------------===//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declarations of the SPUMCAsmInfo properties.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#include "SPUMCAsmInfo.h"<br>
-using namespace llvm;<br>
-<br>
-SPULinuxMCAsmInfo::SPULinuxMCAsmInfo(const Target &T, StringRef TT) {<br>
- ZeroDirective = "\t.space\t";<br>
- Data64bitsDirective = "\t.quad\t";<br>
- AlignmentIsInBytes = false;<br>
-<br>
- PCSymbol = ".";<br>
- CommentString = "#";<br>
- GlobalPrefix = "";<br>
- PrivateGlobalPrefix = ".L";<br>
-<br>
- // Has leb128<br>
- HasLEB128 = true;<br>
-<br>
- SupportsDebugInformation = true;<br>
-<br>
- // Exception handling is not supported on CellSPU (think about it: you only<br>
- // have 256K for code+data. Would you support exception handling?)<br>
- ExceptionsType = ExceptionHandling::None;<br>
-<br>
- // SPU assembly requires ".section" before ".bss"<br>
- UsesELFSectionDirectiveForBSS = true;<br>
-}<br>
-<br>
<br>
Removed: llvm/trunk/lib/Target/CellSPU/SPUMCAsmInfo.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/CellSPU/SPUMCAsmInfo.h?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/CellSPU/SPUMCAsmInfo.h?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/CellSPU/SPUMCAsmInfo.h (original)<br>
+++ llvm/trunk/lib/Target/CellSPU/SPUMCAsmInfo.h (removed)<br>
@@ -1,28 +0,0 @@<br>
-//===-- SPUMCAsmInfo.h - Cell SPU asm properties ---------------*- C++ -*--===//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declaration of the SPUMCAsmInfo class.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#ifndef SPUTARGETASMINFO_H<br>
-#define SPUTARGETASMINFO_H<br>
-<br>
-#include "llvm/ADT/StringRef.h"<br>
-#include "llvm/MC/MCAsmInfo.h"<br>
-<br>
-namespace llvm {<br>
- class Target;<br>
-<br>
- struct SPULinuxMCAsmInfo : public MCAsmInfo {<br>
- explicit SPULinuxMCAsmInfo(const Target &T, StringRef TT);<br>
- };<br>
-} // namespace llvm<br>
-<br>
-#endif /* SPUTARGETASMINFO_H */<br>
<br>
Modified: llvm/trunk/lib/Target/CellSPU/SPUTargetMachine.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/CellSPU/SPUTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/CellSPU/SPUTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/CellSPU/SPUTargetMachine.cpp (original)<br>
+++ llvm/trunk/lib/Target/CellSPU/SPUTargetMachine.cpp Thu Jul 14 18:50:31 2011<br>
@@ -12,7 +12,6 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "SPU.h"<br>
-#include "SPUMCAsmInfo.h"<br>
#include "SPUTargetMachine.h"<br>
#include "llvm/PassManager.h"<br>
#include "llvm/CodeGen/RegAllocRegistry.h"<br>
@@ -24,7 +23,6 @@<br>
extern "C" void LLVMInitializeCellSPUTarget() {<br>
// Register the target.<br>
RegisterTargetMachine<SPUTargetMachine> X(TheCellSPUTarget);<br>
- RegisterAsmInfo<SPULinuxMCAsmInfo> Y(TheCellSPUTarget);<br>
}<br>
<br>
const std::pair<unsigned, int> *<br>
<br>
Modified: llvm/trunk/lib/Target/CppBackend/CPPBackend.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/CppBackend/CPPBackend.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/CppBackend/CPPBackend.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/CppBackend/CPPBackend.cpp (original)<br>
+++ llvm/trunk/lib/Target/CppBackend/CPPBackend.cpp Thu Jul 14 18:50:31 2011<br>
@@ -22,6 +22,7 @@<br>
#include "llvm/Module.h"<br>
#include "llvm/Pass.h"<br>
#include "llvm/PassManager.h"<br>
+#include "llvm/MC/MCAsmInfo.h"<br>
#include "llvm/MC/MCInstrInfo.h"<br>
#include "llvm/MC/MCSubtargetInfo.h"<br>
#include "llvm/ADT/SmallPtrSet.h"<br>
@@ -76,6 +77,8 @@<br>
RegisterTargetMachine<CPPTargetMachine> X(TheCppBackendTarget);<br>
}<br>
<br>
+extern "C" void LLVMInitializeCppBackendMCAsmInfo() {}<br>
+<br>
extern "C" void LLVMInitializeCppBackendMCInstrInfo() {<br>
RegisterMCInstrInfo<MCInstrInfo> X(TheCppBackendTarget);<br>
}<br>
<br>
Modified: llvm/trunk/lib/Target/MBlaze/CMakeLists.txt<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MBlaze/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MBlaze/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/MBlaze/CMakeLists.txt (original)<br>
+++ llvm/trunk/lib/Target/MBlaze/CMakeLists.txt Thu Jul 14 18:50:31 2011<br>
@@ -17,7 +17,6 @@<br>
MBlazeISelDAGToDAG.cpp<br>
MBlazeISelLowering.cpp<br>
MBlazeFrameLowering.cpp<br>
- MBlazeMCAsmInfo.cpp<br>
MBlazeRegisterInfo.cpp<br>
MBlazeSubtarget.cpp<br>
MBlazeTargetMachine.cpp<br>
<br>
Removed: llvm/trunk/lib/Target/MBlaze/MBlazeMCAsmInfo.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MBlaze/MBlazeMCAsmInfo.cpp?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MBlaze/MBlazeMCAsmInfo.cpp?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/MBlaze/MBlazeMCAsmInfo.cpp (original)<br>
+++ llvm/trunk/lib/Target/MBlaze/MBlazeMCAsmInfo.cpp (removed)<br>
@@ -1,22 +0,0 @@<br>
-//===-- MBlazeMCAsmInfo.cpp - MBlaze asm properties -----------------------===//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declarations of the MBlazeMCAsmInfo properties.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#include "MBlazeMCAsmInfo.h"<br>
-using namespace llvm;<br>
-<br>
-MBlazeMCAsmInfo::MBlazeMCAsmInfo() {<br>
- SupportsDebugInformation = true;<br>
- AlignmentIsInBytes = false;<br>
- PrivateGlobalPrefix = "$";<br>
- GPRel32Directive = "\t.gpword\t";<br>
-}<br>
<br>
Removed: llvm/trunk/lib/Target/MBlaze/MBlazeMCAsmInfo.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MBlaze/MBlazeMCAsmInfo.h?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MBlaze/MBlazeMCAsmInfo.h?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/MBlaze/MBlazeMCAsmInfo.h (original)<br>
+++ llvm/trunk/lib/Target/MBlaze/MBlazeMCAsmInfo.h (removed)<br>
@@ -1,30 +0,0 @@<br>
-//=====-- MBlazeMCAsmInfo.h - MBlaze asm properties -----------*- C++ -*--====//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declaration of the MBlazeMCAsmInfo class.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#ifndef MBLAZETARGETASMINFO_H<br>
-#define MBLAZETARGETASMINFO_H<br>
-<br>
-#include "llvm/ADT/StringRef.h"<br>
-#include "llvm/MC/MCAsmInfo.h"<br>
-<br>
-namespace llvm {<br>
- class Target;<br>
-<br>
- class MBlazeMCAsmInfo : public MCAsmInfo {<br>
- public:<br>
- explicit MBlazeMCAsmInfo();<br>
- };<br>
-<br>
-} // namespace llvm<br>
-<br>
-#endif<br>
<br>
Modified: llvm/trunk/lib/Target/MBlaze/MBlazeTargetMachine.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MBlaze/MBlazeTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MBlaze/MBlazeTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/MBlaze/MBlazeTargetMachine.cpp (original)<br>
+++ llvm/trunk/lib/Target/MBlaze/MBlazeTargetMachine.cpp Thu Jul 14 18:50:31 2011<br>
@@ -12,7 +12,6 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "MBlaze.h"<br>
-#include "MBlazeMCAsmInfo.h"<br>
#include "MBlazeTargetMachine.h"<br>
#include "llvm/PassManager.h"<br>
#include "llvm/CodeGen/Passes.h"<br>
@@ -21,14 +20,6 @@<br>
#include "llvm/Target/TargetRegistry.h"<br>
using namespace llvm;<br>
<br>
-static MCAsmInfo *createMCAsmInfo(const Target &T, StringRef TT) {<br>
- Triple TheTriple(TT);<br>
- switch (TheTriple.getOS()) {<br>
- default:<br>
- return new MBlazeMCAsmInfo();<br>
- }<br>
-}<br>
-<br>
static MCStreamer *createMCStreamer(const Target &T, const std::string &TT,<br>
MCContext &Ctx, TargetAsmBackend &TAB,<br>
raw_ostream &_OS,<br>
@@ -55,9 +46,6 @@<br>
// Register the target.<br>
RegisterTargetMachine<MBlazeTargetMachine> X(TheMBlazeTarget);<br>
<br>
- // Register the target asm info.<br>
- RegisterAsmInfoFn A(TheMBlazeTarget, createMCAsmInfo);<br>
-<br>
// Register the MC code emitter<br>
TargetRegistry::RegisterCodeEmitter(TheMBlazeTarget,<br>
llvm::createMBlazeMCCodeEmitter);<br>
<br>
Modified: llvm/trunk/lib/Target/MBlaze/MCTargetDesc/CMakeLists.txt<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MBlaze/MCTargetDesc/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MBlaze/MCTargetDesc/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/MBlaze/MCTargetDesc/CMakeLists.txt (original)<br>
+++ llvm/trunk/lib/Target/MBlaze/MCTargetDesc/CMakeLists.txt Thu Jul 14 18:50:31 2011<br>
@@ -1 +1,4 @@<br>
-add_llvm_library(LLVMMBlazeDesc MBlazeMCTargetDesc.cpp)<br>
+add_llvm_library(LLVMMBlazeDesc<br>
+ MBlazeMCTargetDesc.cpp<br>
+ MBlazeMCAsmInfo.cpp<br>
+ )<br>
<br>
Modified: llvm/trunk/lib/Target/MBlaze/MCTargetDesc/MBlazeMCTargetDesc.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MBlaze/MCTargetDesc/MBlazeMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MBlaze/MCTargetDesc/MBlazeMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/MBlaze/MCTargetDesc/MBlazeMCTargetDesc.cpp (original)<br>
+++ llvm/trunk/lib/Target/MBlaze/MCTargetDesc/MBlazeMCTargetDesc.cpp Thu Jul 14 18:50:31 2011<br>
@@ -12,6 +12,7 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "MBlazeMCTargetDesc.h"<br>
+#include "MBlazeMCAsmInfo.h"<br>
#include "llvm/MC/MCInstrInfo.h"<br>
#include "llvm/MC/MCRegisterInfo.h"<br>
#include "llvm/MC/MCSubtargetInfo.h"<br>
@@ -29,7 +30,7 @@<br>
using namespace llvm;<br>
<br>
<br>
-MCInstrInfo *createMBlazeMCInstrInfo() {<br>
+static MCInstrInfo *createMBlazeMCInstrInfo() {<br>
MCInstrInfo *X = new MCInstrInfo();<br>
InitMBlazeMCInstrInfo(X);<br>
return X;<br>
@@ -39,8 +40,8 @@<br>
TargetRegistry::RegisterMCInstrInfo(TheMBlazeTarget, createMBlazeMCInstrInfo);<br>
}<br>
<br>
-MCSubtargetInfo *createMBlazeMCSubtargetInfo(StringRef TT, StringRef CPU,<br>
- StringRef FS) {<br>
+static MCSubtargetInfo *createMBlazeMCSubtargetInfo(StringRef TT, StringRef CPU,<br>
+ StringRef FS) {<br>
MCSubtargetInfo *X = new MCSubtargetInfo();<br>
InitMBlazeMCSubtargetInfo(X, TT, CPU, FS);<br>
return X;<br>
@@ -50,3 +51,15 @@<br>
TargetRegistry::RegisterMCSubtargetInfo(TheMBlazeTarget,<br>
createMBlazeMCSubtargetInfo);<br>
}<br>
+<br>
+static MCAsmInfo *createMCAsmInfo(const Target &T, StringRef TT) {<br>
+ Triple TheTriple(TT);<br>
+ switch (TheTriple.getOS()) {<br>
+ default:<br>
+ return new MBlazeMCAsmInfo();<br>
+ }<br>
+}<br>
+<br>
+extern "C" void LLVMInitializeMBlazeMCAsmInfo() {<br>
+ RegisterMCAsmInfoFn X(TheMBlazeTarget, createMCAsmInfo);<br>
+}<br>
<br>
Modified: llvm/trunk/lib/Target/MSP430/CMakeLists.txt<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MSP430/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MSP430/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/MSP430/CMakeLists.txt (original)<br>
+++ llvm/trunk/lib/Target/MSP430/CMakeLists.txt Thu Jul 14 18:50:31 2011<br>
@@ -13,7 +13,6 @@<br>
MSP430ISelLowering.cpp<br>
MSP430InstrInfo.cpp<br>
MSP430FrameLowering.cpp<br>
- MSP430MCAsmInfo.cpp<br>
MSP430RegisterInfo.cpp<br>
MSP430Subtarget.cpp<br>
MSP430TargetMachine.cpp<br>
<br>
Modified: llvm/trunk/lib/Target/MSP430/MCTargetDesc/CMakeLists.txt<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MSP430/MCTargetDesc/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MSP430/MCTargetDesc/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/MSP430/MCTargetDesc/CMakeLists.txt (original)<br>
+++ llvm/trunk/lib/Target/MSP430/MCTargetDesc/CMakeLists.txt Thu Jul 14 18:50:31 2011<br>
@@ -1 +1,4 @@<br>
-add_llvm_library(LLVMMSP430Desc MSP430MCTargetDesc.cpp)<br>
+add_llvm_library(LLVMMSP430Desc<br>
+ MSP430MCTargetDesc.cpp<br>
+ MSP430MCAsmInfo.cpp<br>
+ )<br>
<br>
Modified: llvm/trunk/lib/Target/MSP430/MCTargetDesc/MSP430MCTargetDesc.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MSP430/MCTargetDesc/MSP430MCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MSP430/MCTargetDesc/MSP430MCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/MSP430/MCTargetDesc/MSP430MCTargetDesc.cpp (original)<br>
+++ llvm/trunk/lib/Target/MSP430/MCTargetDesc/MSP430MCTargetDesc.cpp Thu Jul 14 18:50:31 2011<br>
@@ -12,6 +12,7 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "MSP430MCTargetDesc.h"<br>
+#include "MSP430MCAsmInfo.h"<br>
#include "llvm/MC/MCInstrInfo.h"<br>
#include "llvm/MC/MCRegisterInfo.h"<br>
#include "llvm/MC/MCSubtargetInfo.h"<br>
@@ -29,7 +30,7 @@<br>
using namespace llvm;<br>
<br>
<br>
-MCInstrInfo *createMSP430MCInstrInfo() {<br>
+static MCInstrInfo *createMSP430MCInstrInfo() {<br>
MCInstrInfo *X = new MCInstrInfo();<br>
InitMSP430MCInstrInfo(X);<br>
return X;<br>
@@ -40,8 +41,8 @@<br>
}<br>
<br>
<br>
-MCSubtargetInfo *createMSP430MCSubtargetInfo(StringRef TT, StringRef CPU,<br>
- StringRef FS) {<br>
+static MCSubtargetInfo *createMSP430MCSubtargetInfo(StringRef TT, StringRef CPU,<br>
+ StringRef FS) {<br>
MCSubtargetInfo *X = new MCSubtargetInfo();<br>
InitMSP430MCSubtargetInfo(X, TT, CPU, FS);<br>
return X;<br>
@@ -51,3 +52,7 @@<br>
TargetRegistry::RegisterMCSubtargetInfo(TheMSP430Target,<br>
createMSP430MCSubtargetInfo);<br>
}<br>
+<br>
+extern "C" void LLVMInitializeMSP430MCAsmInfo() {<br>
+ RegisterMCAsmInfo<MSP430MCAsmInfo> X(TheMSP430Target);<br>
+}<br>
<br>
Modified: llvm/trunk/lib/Target/MSP430/MSP430AsmPrinter.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MSP430/MSP430AsmPrinter.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MSP430/MSP430AsmPrinter.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/MSP430/MSP430AsmPrinter.cpp (original)<br>
+++ llvm/trunk/lib/Target/MSP430/MSP430AsmPrinter.cpp Thu Jul 14 18:50:31 2011<br>
@@ -15,7 +15,6 @@<br>
#define DEBUG_TYPE "asm-printer"<br>
#include "MSP430.h"<br>
#include "MSP430InstrInfo.h"<br>
-#include "MSP430MCAsmInfo.h"<br>
#include "MSP430MCInstLower.h"<br>
#include "MSP430TargetMachine.h"<br>
#include "InstPrinter/MSP430InstPrinter.h"<br>
@@ -28,6 +27,7 @@<br>
#include "llvm/CodeGen/MachineFunctionPass.h"<br>
#include "llvm/CodeGen/MachineConstantPool.h"<br>
#include "llvm/CodeGen/MachineInstr.h"<br>
+#include "llvm/MC/MCAsmInfo.h"<br>
#include "llvm/MC/MCInst.h"<br>
#include "llvm/MC/MCStreamer.h"<br>
#include "llvm/MC/MCSymbol.h"<br>
<br>
Removed: llvm/trunk/lib/Target/MSP430/MSP430MCAsmInfo.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MSP430/MSP430MCAsmInfo.cpp?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MSP430/MSP430MCAsmInfo.cpp?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/MSP430/MSP430MCAsmInfo.cpp (original)<br>
+++ llvm/trunk/lib/Target/MSP430/MSP430MCAsmInfo.cpp (removed)<br>
@@ -1,26 +0,0 @@<br>
-//===-- MSP430MCAsmInfo.cpp - MSP430 asm properties -----------------------===//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declarations of the MSP430MCAsmInfo properties.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#include "MSP430MCAsmInfo.h"<br>
-using namespace llvm;<br>
-<br>
-MSP430MCAsmInfo::MSP430MCAsmInfo(const Target &T, StringRef TT) {<br>
- PrivateGlobalPrefix = ".L";<br>
- WeakRefDirective ="\t.weak\t";<br>
- PCSymbol=".";<br>
- CommentString = ";";<br>
-<br>
- AlignmentIsInBytes = false;<br>
- AllowNameToStartWithDigit = true;<br>
- UsesELFSectionDirectiveForBSS = true;<br>
-}<br>
<br>
Removed: llvm/trunk/lib/Target/MSP430/MSP430MCAsmInfo.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MSP430/MSP430MCAsmInfo.h?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MSP430/MSP430MCAsmInfo.h?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/MSP430/MSP430MCAsmInfo.h (original)<br>
+++ llvm/trunk/lib/Target/MSP430/MSP430MCAsmInfo.h (removed)<br>
@@ -1,29 +0,0 @@<br>
-//=====-- MSP430MCAsmInfo.h - MSP430 asm properties -----------*- C++ -*--====//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declaration of the MSP430MCAsmInfo class.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#ifndef MSP430TARGETASMINFO_H<br>
-#define MSP430TARGETASMINFO_H<br>
-<br>
-#include "llvm/ADT/StringRef.h"<br>
-#include "llvm/MC/MCAsmInfo.h"<br>
-<br>
-namespace llvm {<br>
- class Target;<br>
-<br>
- struct MSP430MCAsmInfo : public MCAsmInfo {<br>
- explicit MSP430MCAsmInfo(const Target &T, StringRef TT);<br>
- };<br>
-<br>
-} // namespace llvm<br>
-<br>
-#endif<br>
<br>
Modified: llvm/trunk/lib/Target/MSP430/MSP430TargetMachine.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MSP430/MSP430TargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/MSP430/MSP430TargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/MSP430/MSP430TargetMachine.cpp (original)<br>
+++ llvm/trunk/lib/Target/MSP430/MSP430TargetMachine.cpp Thu Jul 14 18:50:31 2011<br>
@@ -12,7 +12,6 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "MSP430.h"<br>
-#include "MSP430MCAsmInfo.h"<br>
#include "MSP430TargetMachine.h"<br>
#include "llvm/PassManager.h"<br>
#include "llvm/CodeGen/Passes.h"<br>
@@ -23,7 +22,6 @@<br>
extern "C" void LLVMInitializeMSP430Target() {<br>
// Register the target.<br>
RegisterTargetMachine<MSP430TargetMachine> X(TheMSP430Target);<br>
- RegisterAsmInfo<MSP430MCAsmInfo> Z(TheMSP430Target);<br>
}<br>
<br>
MSP430TargetMachine::MSP430TargetMachine(const Target &T,<br>
<br>
Modified: llvm/trunk/lib/Target/Mips/CMakeLists.txt<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Mips/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Mips/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Mips/CMakeLists.txt (original)<br>
+++ llvm/trunk/lib/Target/Mips/CMakeLists.txt Thu Jul 14 18:50:31 2011<br>
@@ -16,7 +16,6 @@<br>
MipsISelDAGToDAG.cpp<br>
MipsISelLowering.cpp<br>
MipsFrameLowering.cpp<br>
- MipsMCAsmInfo.cpp<br>
MipsMCInstLower.cpp<br>
MipsMCSymbolRefExpr.cpp<br>
MipsRegisterInfo.cpp<br>
<br>
Modified: llvm/trunk/lib/Target/Mips/MCTargetDesc/CMakeLists.txt<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Mips/MCTargetDesc/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Mips/MCTargetDesc/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Mips/MCTargetDesc/CMakeLists.txt (original)<br>
+++ llvm/trunk/lib/Target/Mips/MCTargetDesc/CMakeLists.txt Thu Jul 14 18:50:31 2011<br>
@@ -1 +1,4 @@<br>
-add_llvm_library(LLVMMipsDesc MipsMCTargetDesc.cpp)<br>
+add_llvm_library(LLVMMipsDesc<br>
+ MipsMCTargetDesc.cpp<br>
+ MipsMCAsmInfo.cpp<br>
+ )<br>
<br>
Modified: llvm/trunk/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp (original)<br>
+++ llvm/trunk/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp Thu Jul 14 18:50:31 2011<br>
@@ -12,6 +12,7 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "MipsMCTargetDesc.h"<br>
+#include "MipsMCAsmInfo.h"<br>
#include "llvm/MC/MCInstrInfo.h"<br>
#include "llvm/MC/MCRegisterInfo.h"<br>
#include "llvm/MC/MCSubtargetInfo.h"<br>
@@ -28,7 +29,7 @@<br>
<br>
using namespace llvm;<br>
<br>
-MCInstrInfo *createMipsMCInstrInfo() {<br>
+static MCInstrInfo *createMipsMCInstrInfo() {<br>
MCInstrInfo *X = new MCInstrInfo();<br>
InitMipsMCInstrInfo(X);<br>
return X;<br>
@@ -39,8 +40,8 @@<br>
}<br>
<br>
<br>
-MCSubtargetInfo *createMipsMCSubtargetInfo(StringRef TT, StringRef CPU,<br>
- StringRef FS) {<br>
+static MCSubtargetInfo *createMipsMCSubtargetInfo(StringRef TT, StringRef CPU,<br>
+ StringRef FS) {<br>
MCSubtargetInfo *X = new MCSubtargetInfo();<br>
InitMipsMCSubtargetInfo(X, TT, CPU, FS);<br>
return X;<br>
@@ -50,3 +51,8 @@<br>
TargetRegistry::RegisterMCSubtargetInfo(TheMipsTarget,<br>
createMipsMCSubtargetInfo);<br>
}<br>
+<br>
+extern "C" void LLVMInitializeMipsMCAsmInfo() {<br>
+ RegisterMCAsmInfo<MipsMCAsmInfo> X(TheMipsTarget);<br>
+ RegisterMCAsmInfo<MipsMCAsmInfo> Y(TheMipselTarget);<br>
+}<br>
<br>
Removed: llvm/trunk/lib/Target/Mips/MipsMCAsmInfo.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Mips/MipsMCAsmInfo.cpp?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Mips/MipsMCAsmInfo.cpp?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Mips/MipsMCAsmInfo.cpp (original)<br>
+++ llvm/trunk/lib/Target/Mips/MipsMCAsmInfo.cpp (removed)<br>
@@ -1,32 +0,0 @@<br>
-//===-- MipsMCAsmInfo.cpp - Mips asm properties ---------------------------===//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declarations of the MipsMCAsmInfo properties.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#include "MipsMCAsmInfo.h"<br>
-using namespace llvm;<br>
-<br>
-MipsMCAsmInfo::MipsMCAsmInfo(const Target &T, StringRef TT) {<br>
- AlignmentIsInBytes = false;<br>
- Data16bitsDirective = "\t.2byte\t";<br>
- Data32bitsDirective = "\t.4byte\t";<br>
- Data64bitsDirective = 0;<br>
- PrivateGlobalPrefix = "$";<br>
- CommentString = "#";<br>
- ZeroDirective = "\t.space\t";<br>
- GPRel32Directive = "\t.gpword\t";<br>
- WeakRefDirective = "\t.weak\t";<br>
-<br>
- SupportsDebugInformation = true;<br>
- ExceptionsType = ExceptionHandling::DwarfCFI;<br>
- HasLEB128 = true;<br>
- DwarfRegNumForCFI = true;<br>
-}<br>
<br>
Removed: llvm/trunk/lib/Target/Mips/MipsMCAsmInfo.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Mips/MipsMCAsmInfo.h?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Mips/MipsMCAsmInfo.h?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Mips/MipsMCAsmInfo.h (original)<br>
+++ llvm/trunk/lib/Target/Mips/MipsMCAsmInfo.h (removed)<br>
@@ -1,30 +0,0 @@<br>
-//=====-- MipsMCAsmInfo.h - Mips asm properties ---------------*- C++ -*--====//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declaration of the MipsMCAsmInfo class.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#ifndef MIPSTARGETASMINFO_H<br>
-#define MIPSTARGETASMINFO_H<br>
-<br>
-#include "llvm/ADT/StringRef.h"<br>
-#include "llvm/MC/MCAsmInfo.h"<br>
-<br>
-namespace llvm {<br>
- class Target;<br>
-<br>
- class MipsMCAsmInfo : public MCAsmInfo {<br>
- public:<br>
- explicit MipsMCAsmInfo(const Target &T, StringRef TT);<br>
- };<br>
-<br>
-} // namespace llvm<br>
-<br>
-#endif<br>
<br>
Modified: llvm/trunk/lib/Target/Mips/MipsTargetMachine.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Mips/MipsTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Mips/MipsTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Mips/MipsTargetMachine.cpp (original)<br>
+++ llvm/trunk/lib/Target/Mips/MipsTargetMachine.cpp Thu Jul 14 18:50:31 2011<br>
@@ -12,7 +12,6 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "Mips.h"<br>
-#include "MipsMCAsmInfo.h"<br>
#include "MipsTargetMachine.h"<br>
#include "llvm/PassManager.h"<br>
#include "llvm/Target/TargetRegistry.h"<br>
@@ -22,8 +21,6 @@<br>
// Register the target.<br>
RegisterTargetMachine<MipsTargetMachine> X(TheMipsTarget);<br>
RegisterTargetMachine<MipselTargetMachine> Y(TheMipselTarget);<br>
- RegisterAsmInfo<MipsMCAsmInfo> A(TheMipsTarget);<br>
- RegisterAsmInfo<MipsMCAsmInfo> B(TheMipselTarget);<br>
}<br>
<br>
// DataLayout --> Big-endian, 32-bit pointer/ABI/alignment<br>
<br>
Modified: llvm/trunk/lib/Target/PTX/CMakeLists.txt<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PTX/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PTX/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/PTX/CMakeLists.txt (original)<br>
+++ llvm/trunk/lib/Target/PTX/CMakeLists.txt Thu Jul 14 18:50:31 2011<br>
@@ -13,7 +13,6 @@<br>
PTXISelLowering.cpp<br>
PTXInstrInfo.cpp<br>
PTXFrameLowering.cpp<br>
- PTXMCAsmInfo.cpp<br>
PTXMCAsmStreamer.cpp<br>
PTXMFInfoExtract.cpp<br>
PTXRegisterInfo.cpp<br>
<br>
Modified: llvm/trunk/lib/Target/PTX/MCTargetDesc/CMakeLists.txt<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PTX/MCTargetDesc/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PTX/MCTargetDesc/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/PTX/MCTargetDesc/CMakeLists.txt (original)<br>
+++ llvm/trunk/lib/Target/PTX/MCTargetDesc/CMakeLists.txt Thu Jul 14 18:50:31 2011<br>
@@ -1 +1,4 @@<br>
-add_llvm_library(LLVMPTXDesc PTXMCTargetDesc.cpp)<br>
+add_llvm_library(LLVMPTXDesc<br>
+ PTXMCTargetDesc.cpp<br>
+ PTXMCAsmInfo.cpp<br>
+ )<br>
<br>
Modified: llvm/trunk/lib/Target/PTX/MCTargetDesc/PTXMCTargetDesc.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PTX/MCTargetDesc/PTXMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PTX/MCTargetDesc/PTXMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/PTX/MCTargetDesc/PTXMCTargetDesc.cpp (original)<br>
+++ llvm/trunk/lib/Target/PTX/MCTargetDesc/PTXMCTargetDesc.cpp Thu Jul 14 18:50:31 2011<br>
@@ -12,6 +12,7 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "PTXMCTargetDesc.h"<br>
+#include "PTXMCAsmInfo.h"<br>
#include "llvm/MC/MCInstrInfo.h"<br>
#include "llvm/MC/MCRegisterInfo.h"<br>
#include "llvm/MC/MCSubtargetInfo.h"<br>
@@ -28,7 +29,7 @@<br>
<br>
using namespace llvm;<br>
<br>
-MCInstrInfo *createPTXMCInstrInfo() {<br>
+static MCInstrInfo *createPTXMCInstrInfo() {<br>
MCInstrInfo *X = new MCInstrInfo();<br>
InitPTXMCInstrInfo(X);<br>
return X;<br>
@@ -39,8 +40,8 @@<br>
TargetRegistry::RegisterMCInstrInfo(ThePTX64Target, createPTXMCInstrInfo);<br>
}<br>
<br>
-MCSubtargetInfo *createPTXMCSubtargetInfo(StringRef TT, StringRef CPU,<br>
- StringRef FS) {<br>
+static MCSubtargetInfo *createPTXMCSubtargetInfo(StringRef TT, StringRef CPU,<br>
+ StringRef FS) {<br>
MCSubtargetInfo *X = new MCSubtargetInfo();<br>
InitPTXMCSubtargetInfo(X, TT, CPU, FS);<br>
return X;<br>
@@ -52,3 +53,8 @@<br>
TargetRegistry::RegisterMCSubtargetInfo(ThePTX64Target,<br>
createPTXMCSubtargetInfo);<br>
}<br>
+<br>
+extern "C" void LLVMInitializePTXMCAsmInfo() {<br>
+ RegisterMCAsmInfo<PTXMCAsmInfo> X(ThePTX32Target);<br>
+ RegisterMCAsmInfo<PTXMCAsmInfo> Y(ThePTX64Target);<br>
+}<br>
<br>
Removed: llvm/trunk/lib/Target/PTX/PTXMCAsmInfo.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PTX/PTXMCAsmInfo.cpp?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PTX/PTXMCAsmInfo.cpp?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/PTX/PTXMCAsmInfo.cpp (original)<br>
+++ llvm/trunk/lib/Target/PTX/PTXMCAsmInfo.cpp (removed)<br>
@@ -1,30 +0,0 @@<br>
-//===-- PTXMCAsmInfo.cpp - PTX asm properties -----------------------------===//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declarations of the PTXMCAsmInfo properties.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#include "PTXMCAsmInfo.h"<br>
-<br>
-using namespace llvm;<br>
-<br>
-PTXMCAsmInfo::PTXMCAsmInfo(const Target &T, const StringRef &TT) {<br>
- CommentString = "//";<br>
-<br>
- PrivateGlobalPrefix = "$L__";<br>
-<br>
- AllowPeriodsInName = false;<br>
-<br>
- HasSetDirective = false;<br>
-<br>
- HasDotTypeDotSizeDirective = false;<br>
-<br>
- HasSingleParameterDotFile = false;<br>
-}<br>
<br>
Removed: llvm/trunk/lib/Target/PTX/PTXMCAsmInfo.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PTX/PTXMCAsmInfo.h?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PTX/PTXMCAsmInfo.h?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/PTX/PTXMCAsmInfo.h (original)<br>
+++ llvm/trunk/lib/Target/PTX/PTXMCAsmInfo.h (removed)<br>
@@ -1,28 +0,0 @@<br>
-//=====-- PTXMCAsmInfo.h - PTX asm properties -----------------*- C++ -*--====//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declaration of the PTXMCAsmInfo class.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#ifndef PTX_MCASM_INFO_H<br>
-#define PTX_MCASM_INFO_H<br>
-<br>
-#include "llvm/MC/MCAsmInfo.h"<br>
-<br>
-namespace llvm {<br>
- class Target;<br>
- class StringRef;<br>
-<br>
- struct PTXMCAsmInfo : public MCAsmInfo {<br>
- explicit PTXMCAsmInfo(const Target &T, const StringRef &TT);<br>
- };<br>
-} // namespace llvm<br>
-<br>
-#endif // PTX_MCASM_INFO_H<br>
<br>
Modified: llvm/trunk/lib/Target/PTX/PTXTargetMachine.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PTX/PTXTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PTX/PTXTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/PTX/PTXTargetMachine.cpp (original)<br>
+++ llvm/trunk/lib/Target/PTX/PTXTargetMachine.cpp Thu Jul 14 18:50:31 2011<br>
@@ -12,7 +12,6 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "PTX.h"<br>
-#include "PTXMCAsmInfo.h"<br>
#include "PTXTargetMachine.h"<br>
#include "llvm/PassManager.h"<br>
#include "llvm/Target/TargetRegistry.h"<br>
@@ -35,9 +34,6 @@<br>
RegisterTargetMachine<PTX32TargetMachine> X(ThePTX32Target);<br>
RegisterTargetMachine<PTX64TargetMachine> Y(ThePTX64Target);<br>
<br>
- RegisterAsmInfo<PTXMCAsmInfo> Z(ThePTX32Target);<br>
- RegisterAsmInfo<PTXMCAsmInfo> W(ThePTX64Target);<br>
-<br>
TargetRegistry::RegisterAsmStreamer(ThePTX32Target, createPTXAsmStreamer);<br>
TargetRegistry::RegisterAsmStreamer(ThePTX64Target, createPTXAsmStreamer);<br>
}<br>
<br>
Modified: llvm/trunk/lib/Target/PowerPC/CMakeLists.txt<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/PowerPC/CMakeLists.txt (original)<br>
+++ llvm/trunk/lib/Target/PowerPC/CMakeLists.txt Thu Jul 14 18:50:31 2011<br>
@@ -20,7 +20,6 @@<br>
PPCISelLowering.cpp<br>
PPCFrameLowering.cpp<br>
PPCJITInfo.cpp<br>
- PPCMCAsmInfo.cpp<br>
PPCMCCodeEmitter.cpp<br>
PPCMCInstLower.cpp<br>
PPCPredicates.cpp<br>
<br>
Modified: llvm/trunk/lib/Target/PowerPC/MCTargetDesc/CMakeLists.txt<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/MCTargetDesc/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/MCTargetDesc/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/PowerPC/MCTargetDesc/CMakeLists.txt (original)<br>
+++ llvm/trunk/lib/Target/PowerPC/MCTargetDesc/CMakeLists.txt Thu Jul 14 18:50:31 2011<br>
@@ -1 +1,4 @@<br>
-add_llvm_library(LLVMPowerPCDesc PPCMCTargetDesc.cpp)<br>
+add_llvm_library(LLVMPowerPCDesc<br>
+ PPCMCTargetDesc.cpp<br>
+ PPCMCAsmInfo.cpp<br>
+ )<br>
<br>
Modified: llvm/trunk/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp (original)<br>
+++ llvm/trunk/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp Thu Jul 14 18:50:31 2011<br>
@@ -12,6 +12,7 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "PPCMCTargetDesc.h"<br>
+#include "PPCMCAsmInfo.h"<br>
#include "llvm/MC/MCInstrInfo.h"<br>
#include "llvm/MC/MCRegisterInfo.h"<br>
#include "llvm/MC/MCSubtargetInfo.h"<br>
@@ -28,7 +29,7 @@<br>
<br>
using namespace llvm;<br>
<br>
-MCInstrInfo *createPPCMCInstrInfo() {<br>
+static MCInstrInfo *createPPCMCInstrInfo() {<br>
MCInstrInfo *X = new MCInstrInfo();<br>
InitPPCMCInstrInfo(X);<br>
return X;<br>
@@ -40,8 +41,8 @@<br>
}<br>
<br>
<br>
-MCSubtargetInfo *createPPCMCSubtargetInfo(StringRef TT, StringRef CPU,<br>
- StringRef FS) {<br>
+static MCSubtargetInfo *createPPCMCSubtargetInfo(StringRef TT, StringRef CPU,<br>
+ StringRef FS) {<br>
MCSubtargetInfo *X = new MCSubtargetInfo();<br>
InitPPCMCSubtargetInfo(X, TT, CPU, FS);<br>
return X;<br>
@@ -53,3 +54,17 @@<br>
TargetRegistry::RegisterMCSubtargetInfo(ThePPC64Target,<br>
createPPCMCSubtargetInfo);<br>
}<br>
+<br>
+static MCAsmInfo *createMCAsmInfo(const Target &T, StringRef TT) {<br>
+ Triple TheTriple(TT);<br>
+ bool isPPC64 = TheTriple.getArch() == Triple::ppc64;<br>
+ if (TheTriple.isOSDarwin())<br>
+ return new PPCMCAsmInfoDarwin(isPPC64);<br>
+ return new PPCLinuxMCAsmInfo(isPPC64);<br>
+<br>
+}<br>
+<br>
+extern "C" void LLVMInitializePowerPCMCAsmInfo() {<br>
+ RegisterMCAsmInfoFn C(ThePPC32Target, createMCAsmInfo);<br>
+ RegisterMCAsmInfoFn D(ThePPC64Target, createMCAsmInfo);<br>
+}<br>
<br>
Removed: llvm/trunk/lib/Target/PowerPC/PPCMCAsmInfo.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/PPCMCAsmInfo.cpp?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/PPCMCAsmInfo.cpp?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/PowerPC/PPCMCAsmInfo.cpp (original)<br>
+++ llvm/trunk/lib/Target/PowerPC/PPCMCAsmInfo.cpp (removed)<br>
@@ -1,58 +0,0 @@<br>
-//===-- PPCMCAsmInfo.cpp - PPC asm properties -------------------*- C++ -*-===//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declarations of the MCAsmInfoDarwin properties.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#include "PPCMCAsmInfo.h"<br>
-using namespace llvm;<br>
-<br>
-PPCMCAsmInfoDarwin::PPCMCAsmInfoDarwin(bool is64Bit) {<br>
- PCSymbol = ".";<br>
- CommentString = ";";<br>
- ExceptionsType = ExceptionHandling::DwarfCFI;<br>
-<br>
- if (!is64Bit)<br>
- Data64bitsDirective = 0; // We can't emit a 64-bit unit in PPC32 mode.<br>
-<br>
- AssemblerDialect = 1; // New-Style mnemonics.<br>
- SupportsDebugInformation= true; // Debug information.<br>
-}<br>
-<br>
-PPCLinuxMCAsmInfo::PPCLinuxMCAsmInfo(bool is64Bit) {<br>
- // ".comm align is in bytes but .align is pow-2."<br>
- AlignmentIsInBytes = false;<br>
-<br>
- CommentString = "#";<br>
- GlobalPrefix = "";<br>
- PrivateGlobalPrefix = ".L";<br>
- WeakRefDirective = "\t.weak\t";<br>
-<br>
- // Uses '.section' before '.bss' directive<br>
- UsesELFSectionDirectiveForBSS = true;<br>
-<br>
- // Debug Information<br>
- SupportsDebugInformation = true;<br>
-<br>
- PCSymbol = ".";<br>
-<br>
- // Set up DWARF directives<br>
- HasLEB128 = true; // Target asm supports leb128 directives (little-endian)<br>
-<br>
- // Exceptions handling<br>
- if (!is64Bit)<br>
- ExceptionsType = ExceptionHandling::DwarfCFI;<br>
-<br>
- ZeroDirective = "\t.space\t";<br>
- Data64bitsDirective = is64Bit ? "\t.quad\t" : 0;<br>
- HasLCOMMDirective = true;<br>
- AssemblerDialect = 0; // Old-Style mnemonics.<br>
-}<br>
-<br>
<br>
Removed: llvm/trunk/lib/Target/PowerPC/PPCMCAsmInfo.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/PPCMCAsmInfo.h?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/PPCMCAsmInfo.h?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/PowerPC/PPCMCAsmInfo.h (original)<br>
+++ llvm/trunk/lib/Target/PowerPC/PPCMCAsmInfo.h (removed)<br>
@@ -1,31 +0,0 @@<br>
-//=====-- PPCMCAsmInfo.h - PPC asm properties -----------------*- C++ -*--====//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declaration of the MCAsmInfoDarwin class.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#ifndef PPCTARGETASMINFO_H<br>
-#define PPCTARGETASMINFO_H<br>
-<br>
-#include "llvm/MC/MCAsmInfoDarwin.h"<br>
-<br>
-namespace llvm {<br>
-<br>
- struct PPCMCAsmInfoDarwin : public MCAsmInfoDarwin {<br>
- explicit PPCMCAsmInfoDarwin(bool is64Bit);<br>
- };<br>
-<br>
- struct PPCLinuxMCAsmInfo : public MCAsmInfo {<br>
- explicit PPCLinuxMCAsmInfo(bool is64Bit);<br>
- };<br>
-<br>
-} // namespace llvm<br>
-<br>
-#endif<br>
<br>
Modified: llvm/trunk/lib/Target/PowerPC/PPCTargetMachine.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/PPCTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/PPCTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/PowerPC/PPCTargetMachine.cpp (original)<br>
+++ llvm/trunk/lib/Target/PowerPC/PPCTargetMachine.cpp Thu Jul 14 18:50:31 2011<br>
@@ -12,7 +12,6 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "PPC.h"<br>
-#include "PPCMCAsmInfo.h"<br>
#include "PPCTargetMachine.h"<br>
#include "llvm/PassManager.h"<br>
#include "llvm/MC/MCStreamer.h"<br>
@@ -21,15 +20,6 @@<br>
#include "llvm/Support/FormattedStream.h"<br>
using namespace llvm;<br>
<br>
-static MCAsmInfo *createMCAsmInfo(const Target &T, StringRef TT) {<br>
- Triple TheTriple(TT);<br>
- bool isPPC64 = TheTriple.getArch() == Triple::ppc64;<br>
- if (TheTriple.isOSDarwin())<br>
- return new PPCMCAsmInfoDarwin(isPPC64);<br>
- return new PPCLinuxMCAsmInfo(isPPC64);<br>
-<br>
-}<br>
-<br>
// This is duplicated code. Refactor this.<br>
static MCStreamer *createMCStreamer(const Target &T, const std::string &TT,<br>
MCContext &Ctx, TargetAsmBackend &TAB,<br>
@@ -48,9 +38,6 @@<br>
RegisterTargetMachine<PPC32TargetMachine> A(ThePPC32Target);<br>
RegisterTargetMachine<PPC64TargetMachine> B(ThePPC64Target);<br>
<br>
- RegisterAsmInfoFn C(ThePPC32Target, createMCAsmInfo);<br>
- RegisterAsmInfoFn D(ThePPC64Target, createMCAsmInfo);<br>
-<br>
// Register the MC Code Emitter<br>
TargetRegistry::RegisterCodeEmitter(ThePPC32Target, createPPCMCCodeEmitter);<br>
TargetRegistry::RegisterCodeEmitter(ThePPC64Target, createPPCMCCodeEmitter);<br>
<br>
Modified: llvm/trunk/lib/Target/Sparc/CMakeLists.txt<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Sparc/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Sparc/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Sparc/CMakeLists.txt (original)<br>
+++ llvm/trunk/lib/Target/Sparc/CMakeLists.txt Thu Jul 14 18:50:31 2011<br>
@@ -15,7 +15,6 @@<br>
SparcISelDAGToDAG.cpp<br>
SparcISelLowering.cpp<br>
SparcFrameLowering.cpp<br>
- SparcMCAsmInfo.cpp<br>
SparcRegisterInfo.cpp<br>
SparcSubtarget.cpp<br>
SparcTargetMachine.cpp<br>
<br>
Modified: llvm/trunk/lib/Target/Sparc/MCTargetDesc/CMakeLists.txt<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Sparc/MCTargetDesc/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Sparc/MCTargetDesc/CMakeLists.txt?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Sparc/MCTargetDesc/CMakeLists.txt (original)<br>
+++ llvm/trunk/lib/Target/Sparc/MCTargetDesc/CMakeLists.txt Thu Jul 14 18:50:31 2011<br>
@@ -1 +1,4 @@<br>
-add_llvm_library(LLVMSparcDesc SparcMCTargetDesc.cpp)<br>
+add_llvm_library(LLVMSparcDesc<br>
+ SparcMCTargetDesc.cpp<br>
+ SparcMCAsmInfo.cpp<br>
+ )<br>
<br>
Modified: llvm/trunk/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.cpp (original)<br>
+++ llvm/trunk/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.cpp Thu Jul 14 18:50:31 2011<br>
@@ -12,6 +12,7 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "SparcMCTargetDesc.h"<br>
+#include "SparcMCAsmInfo.h"<br>
#include "llvm/MC/MCInstrInfo.h"<br>
#include "llvm/MC/MCRegisterInfo.h"<br>
#include "llvm/MC/MCSubtargetInfo.h"<br>
@@ -28,7 +29,7 @@<br>
<br>
using namespace llvm;<br>
<br>
-MCInstrInfo *createSparcMCInstrInfo() {<br>
+static MCInstrInfo *createSparcMCInstrInfo() {<br>
MCInstrInfo *X = new MCInstrInfo();<br>
InitSparcMCInstrInfo(X);<br>
return X;<br>
@@ -38,8 +39,8 @@<br>
TargetRegistry::RegisterMCInstrInfo(TheSparcTarget, createSparcMCInstrInfo);<br>
}<br>
<br>
-MCSubtargetInfo *createSparcMCSubtargetInfo(StringRef TT, StringRef CPU,<br>
- StringRef FS) {<br>
+static MCSubtargetInfo *createSparcMCSubtargetInfo(StringRef TT, StringRef CPU,<br>
+ StringRef FS) {<br>
MCSubtargetInfo *X = new MCSubtargetInfo();<br>
InitSparcMCSubtargetInfo(X, TT, CPU, FS);<br>
return X;<br>
@@ -49,3 +50,8 @@<br>
TargetRegistry::RegisterMCSubtargetInfo(TheSparcTarget,<br>
createSparcMCSubtargetInfo);<br>
}<br>
+<br>
+extern "C" void LLVMInitializeSparcMCAsmInfo() {<br>
+ RegisterMCAsmInfo<SparcELFMCAsmInfo> X(TheSparcTarget);<br>
+ RegisterMCAsmInfo<SparcELFMCAsmInfo> Y(TheSparcV9Target);<br>
+}<br>
<br>
Removed: llvm/trunk/lib/Target/Sparc/SparcMCAsmInfo.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Sparc/SparcMCAsmInfo.cpp?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Sparc/SparcMCAsmInfo.cpp?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Sparc/SparcMCAsmInfo.cpp (original)<br>
+++ llvm/trunk/lib/Target/Sparc/SparcMCAsmInfo.cpp (removed)<br>
@@ -1,34 +0,0 @@<br>
-//===-- SparcMCAsmInfo.cpp - Sparc asm properties -------------------------===//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declarations of the SparcMCAsmInfo properties.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#include "SparcMCAsmInfo.h"<br>
-using namespace llvm;<br>
-<br>
-SparcELFMCAsmInfo::SparcELFMCAsmInfo(const Target &T, StringRef TT) {<br>
- Data16bitsDirective = "\t.half\t";<br>
- Data32bitsDirective = "\t.word\t";<br>
- Data64bitsDirective = 0; // .xword is only supported by V9.<br>
- ZeroDirective = "\t.skip\t";<br>
- CommentString = "!";<br>
- HasLEB128 = true;<br>
- SupportsDebugInformation = true;<br>
-<br>
- SunStyleELFSectionSwitchSyntax = true;<br>
- UsesELFSectionDirectiveForBSS = true;<br>
-<br>
- WeakRefDirective = "\t.weak\t";<br>
-<br>
- PrivateGlobalPrefix = ".L";<br>
-}<br>
-<br>
-<br>
<br>
Removed: llvm/trunk/lib/Target/Sparc/SparcMCAsmInfo.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Sparc/SparcMCAsmInfo.h?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Sparc/SparcMCAsmInfo.h?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Sparc/SparcMCAsmInfo.h (original)<br>
+++ llvm/trunk/lib/Target/Sparc/SparcMCAsmInfo.h (removed)<br>
@@ -1,29 +0,0 @@<br>
-//=====-- SparcMCAsmInfo.h - Sparc asm properties -------------*- C++ -*--====//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declaration of the SparcMCAsmInfo class.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#ifndef SPARCTARGETASMINFO_H<br>
-#define SPARCTARGETASMINFO_H<br>
-<br>
-#include "llvm/ADT/StringRef.h"<br>
-#include "llvm/MC/MCAsmInfo.h"<br>
-<br>
-namespace llvm {<br>
- class Target;<br>
-<br>
- struct SparcELFMCAsmInfo : public MCAsmInfo {<br>
- explicit SparcELFMCAsmInfo(const Target &T, StringRef TT);<br>
- };<br>
-<br>
-} // namespace llvm<br>
-<br>
-#endif<br>
<br>
Modified: llvm/trunk/lib/Target/Sparc/SparcTargetMachine.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Sparc/SparcTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Sparc/SparcTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/Sparc/SparcTargetMachine.cpp (original)<br>
+++ llvm/trunk/lib/Target/Sparc/SparcTargetMachine.cpp Thu Jul 14 18:50:31 2011<br>
@@ -11,7 +11,6 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "Sparc.h"<br>
-#include "SparcMCAsmInfo.h"<br>
#include "SparcTargetMachine.h"<br>
#include "llvm/PassManager.h"<br>
#include "llvm/Target/TargetRegistry.h"<br>
@@ -21,10 +20,6 @@<br>
// Register the target.<br>
RegisterTargetMachine<SparcV8TargetMachine> X(TheSparcTarget);<br>
RegisterTargetMachine<SparcV9TargetMachine> Y(TheSparcV9Target);<br>
-<br>
- RegisterAsmInfo<SparcELFMCAsmInfo> A(TheSparcTarget);<br>
- RegisterAsmInfo<SparcELFMCAsmInfo> B(TheSparcV9Target);<br>
-<br>
}<br>
<br>
/// SparcTargetMachine ctor - Create an ILP32 architecture model<br>
<br>
Modified: llvm/trunk/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp (original)<br>
+++ llvm/trunk/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp Thu Jul 14 18:50:31 2011<br>
@@ -12,6 +12,7 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "SystemZMCTargetDesc.h"<br>
+#include "SystemZMCAsmInfo.h"<br>
#include "llvm/MC/MCInstrInfo.h"<br>
#include "llvm/MC/MCRegisterInfo.h"<br>
#include "llvm/MC/MCSubtargetInfo.h"<br>
@@ -28,7 +29,7 @@<br>
<br>
using namespace llvm;<br>
<br>
-MCInstrInfo *createSystemZMCInstrInfo() {<br>
+static MCInstrInfo *createSystemZMCInstrInfo() {<br>
MCInstrInfo *X = new MCInstrInfo();<br>
InitSystemZMCInstrInfo(X);<br>
return X;<br>
@@ -39,8 +40,9 @@<br>
createSystemZMCInstrInfo);<br>
}<br>
<br>
-MCSubtargetInfo *createSystemZMCSubtargetInfo(StringRef TT, StringRef CPU,<br>
- StringRef FS) {<br>
+static MCSubtargetInfo *createSystemZMCSubtargetInfo(StringRef TT,<br>
+ StringRef CPU,<br>
+ StringRef FS) {<br>
MCSubtargetInfo *X = new MCSubtargetInfo();<br>
InitSystemZMCSubtargetInfo(X, TT, CPU, FS);<br>
return X;<br>
@@ -50,3 +52,7 @@<br>
TargetRegistry::RegisterMCSubtargetInfo(TheSystemZTarget,<br>
createSystemZMCSubtargetInfo);<br>
}<br>
+<br>
+extern "C" void LLVMInitializeSystemZMCAsmInfo() {<br>
+ RegisterMCAsmInfo<SystemZMCAsmInfo> X(TheSystemZTarget);<br>
+}<br>
<br>
Removed: llvm/trunk/lib/Target/SystemZ/SystemZMCAsmInfo.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/SystemZ/SystemZMCAsmInfo.cpp?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/SystemZ/SystemZMCAsmInfo.cpp?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/SystemZ/SystemZMCAsmInfo.cpp (original)<br>
+++ llvm/trunk/lib/Target/SystemZ/SystemZMCAsmInfo.cpp (removed)<br>
@@ -1,30 +0,0 @@<br>
-//===-- SystemZMCAsmInfo.cpp - SystemZ asm properties ---------------------===//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declarations of the SystemZMCAsmInfo properties.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#include "SystemZMCAsmInfo.h"<br>
-#include "llvm/MC/MCContext.h"<br>
-#include "llvm/MC/MCSectionELF.h"<br>
-#include "llvm/Support/ELF.h"<br>
-using namespace llvm;<br>
-<br>
-SystemZMCAsmInfo::SystemZMCAsmInfo(const Target &T, StringRef TT) {<br>
- PrivateGlobalPrefix = ".L";<br>
- WeakRefDirective = "\t.weak\t";<br>
- PCSymbol = ".";<br>
-}<br>
-<br>
-const MCSection *SystemZMCAsmInfo::<br>
-getNonexecutableStackSection(MCContext &Ctx) const{<br>
- return Ctx.getELFSection(".note.GNU-stack", ELF::SHT_PROGBITS,<br>
- 0, SectionKind::getMetadata());<br>
-}<br>
<br>
Removed: llvm/trunk/lib/Target/SystemZ/SystemZMCAsmInfo.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/SystemZ/SystemZMCAsmInfo.h?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/SystemZ/SystemZMCAsmInfo.h?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/SystemZ/SystemZMCAsmInfo.h (original)<br>
+++ llvm/trunk/lib/Target/SystemZ/SystemZMCAsmInfo.h (removed)<br>
@@ -1,30 +0,0 @@<br>
-//====-- SystemZMCAsmInfo.h - SystemZ asm properties -----------*- C++ -*--===//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declaration of the SystemZMCAsmInfo class.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#ifndef SystemZTARGETASMINFO_H<br>
-#define SystemZTARGETASMINFO_H<br>
-<br>
-#include "llvm/MC/MCAsmInfo.h"<br>
-<br>
-namespace llvm {<br>
- class Target;<br>
- class StringRef;<br>
-<br>
- struct SystemZMCAsmInfo : public MCAsmInfo {<br>
- explicit SystemZMCAsmInfo(const Target &T, StringRef TT);<br>
- virtual const MCSection *getNonexecutableStackSection(MCContext &Ctx) const;<br>
- };<br>
-<br>
-} // namespace llvm<br>
-<br>
-#endif<br>
<br>
Modified: llvm/trunk/lib/Target/SystemZ/SystemZTargetMachine.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/SystemZ/SystemZTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/SystemZ/SystemZTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/SystemZ/SystemZTargetMachine.cpp (original)<br>
+++ llvm/trunk/lib/Target/SystemZ/SystemZTargetMachine.cpp Thu Jul 14 18:50:31 2011<br>
@@ -7,7 +7,6 @@<br>
//<br>
//===----------------------------------------------------------------------===//<br>
<br>
-#include "SystemZMCAsmInfo.h"<br>
#include "SystemZTargetMachine.h"<br>
#include "SystemZ.h"<br>
#include "llvm/PassManager.h"<br>
@@ -17,7 +16,6 @@<br>
extern "C" void LLVMInitializeSystemZTarget() {<br>
// Register the target.<br>
RegisterTargetMachine<SystemZTargetMachine> X(TheSystemZTarget);<br>
- RegisterAsmInfo<SystemZMCAsmInfo> Y(TheSystemZTarget);<br>
}<br>
<br>
/// SystemZTargetMachine ctor - Create an ILP64 architecture model<br>
<br>
Modified: llvm/trunk/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp (original)<br>
+++ llvm/trunk/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp Thu Jul 14 18:50:31 2011<br>
@@ -12,6 +12,7 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "X86MCTargetDesc.h"<br>
+#include "X86MCAsmInfo.h"<br>
#include "llvm/MC/MCInstrInfo.h"<br>
#include "llvm/MC/MCRegisterInfo.h"<br>
#include "llvm/MC/MCSubtargetInfo.h"<br>
@@ -130,33 +131,55 @@<br>
return X;<br>
}<br>
<br>
-MCInstrInfo *createX86MCInstrInfo() {<br>
- MCInstrInfo *X = new MCInstrInfo();<br>
- InitX86MCInstrInfo(X);<br>
- return X;<br>
+// Force static initialization.<br>
+extern "C" void LLVMInitializeX86MCSubtargetInfo() {<br>
+ TargetRegistry::RegisterMCSubtargetInfo(TheX86_32Target,<br>
+ X86_MC::createX86MCSubtargetInfo);<br>
+ TargetRegistry::RegisterMCSubtargetInfo(TheX86_64Target,<br>
+ X86_MC::createX86MCSubtargetInfo);<br>
}<br>
<br>
-MCRegisterInfo *createX86MCRegisterInfo() {<br>
- MCRegisterInfo *X = new MCRegisterInfo();<br>
- InitX86MCRegisterInfo(X);<br>
+static MCInstrInfo *createX86MCInstrInfo() {<br>
+ MCInstrInfo *X = new MCInstrInfo();<br>
+ InitX86MCInstrInfo(X);<br>
return X;<br>
}<br>
<br>
-// Force static initialization.<br>
extern "C" void LLVMInitializeX86MCInstrInfo() {<br>
TargetRegistry::RegisterMCInstrInfo(TheX86_32Target, createX86MCInstrInfo);<br>
TargetRegistry::RegisterMCInstrInfo(TheX86_64Target, createX86MCInstrInfo);<br>
}<br>
<br>
+static MCRegisterInfo *createX86MCRegisterInfo() {<br>
+ MCRegisterInfo *X = new MCRegisterInfo();<br>
+ InitX86MCRegisterInfo(X);<br>
+ return X;<br>
+}<br>
+<br>
extern "C" void LLVMInitializeX86MCRegInfo() {<br>
TargetRegistry::RegisterMCRegInfo(TheX86_32Target, createX86MCRegisterInfo);<br>
TargetRegistry::RegisterMCRegInfo(TheX86_64Target, createX86MCRegisterInfo);<br>
}<br>
<br>
<br>
-extern "C" void LLVMInitializeX86MCSubtargetInfo() {<br>
- TargetRegistry::RegisterMCSubtargetInfo(TheX86_32Target,<br>
- X86_MC::createX86MCSubtargetInfo);<br>
- TargetRegistry::RegisterMCSubtargetInfo(TheX86_64Target,<br>
- X86_MC::createX86MCSubtargetInfo);<br>
+static MCAsmInfo *createMCAsmInfo(const Target &T, StringRef TT) {<br>
+ Triple TheTriple(TT);<br>
+<br>
+ if (TheTriple.isOSDarwin() || TheTriple.getEnvironment() == Triple::MachO) {<br>
+ if (TheTriple.getArch() == Triple::x86_64)<br>
+ return new X86_64MCAsmInfoDarwin(TheTriple);<br>
+ else<br>
+ return new X86MCAsmInfoDarwin(TheTriple);<br>
+ }<br>
+<br>
+ if (TheTriple.isOSWindows())<br>
+ return new X86MCAsmInfoCOFF(TheTriple);<br>
+<br>
+ return new X86ELFMCAsmInfo(TheTriple);<br>
+}<br>
+<br>
+extern "C" void LLVMInitializeX86MCAsmInfo() {<br>
+ // Register the target asm info.<br>
+ RegisterMCAsmInfoFn A(TheX86_32Target, createMCAsmInfo);<br>
+ RegisterMCAsmInfoFn B(TheX86_64Target, createMCAsmInfo);<br>
}<br>
<br>
Removed: llvm/trunk/lib/Target/X86/X86MCAsmInfo.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86MCAsmInfo.cpp?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86MCAsmInfo.cpp?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/X86/X86MCAsmInfo.cpp (original)<br>
+++ llvm/trunk/lib/Target/X86/X86MCAsmInfo.cpp (removed)<br>
@@ -1,134 +0,0 @@<br>
-//===-- X86MCAsmInfo.cpp - X86 asm properties -----------------------------===//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declarations of the X86MCAsmInfo properties.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#include "X86MCAsmInfo.h"<br>
-#include "X86TargetMachine.h"<br>
-#include "llvm/ADT/Triple.h"<br>
-#include "llvm/MC/MCContext.h"<br>
-#include "llvm/MC/MCExpr.h"<br>
-#include "llvm/MC/MCSectionELF.h"<br>
-#include "llvm/MC/MCStreamer.h"<br>
-#include "llvm/Support/CommandLine.h"<br>
-#include "llvm/Support/ELF.h"<br>
-using namespace llvm;<br>
-<br>
-enum AsmWriterFlavorTy {<br>
- // Note: This numbering has to match the GCC assembler dialects for inline<br>
- // asm alternatives to work right.<br>
- ATT = 0, Intel = 1<br>
-};<br>
-<br>
-static cl::opt<AsmWriterFlavorTy><br>
-AsmWriterFlavor("x86-asm-syntax", cl::init(ATT),<br>
- cl::desc("Choose style of code to emit from X86 backend:"),<br>
- cl::values(clEnumValN(ATT, "att", "Emit AT&T-style assembly"),<br>
- clEnumValN(Intel, "intel", "Emit Intel-style assembly"),<br>
- clEnumValEnd));<br>
-<br>
-<br>
-static const char *const x86_asm_table[] = {<br>
- "{si}", "S",<br>
- "{di}", "D",<br>
- "{ax}", "a",<br>
- "{cx}", "c",<br>
- "{memory}", "memory",<br>
- "{flags}", "",<br>
- "{dirflag}", "",<br>
- "{fpsr}", "",<br>
- "{fpcr}", "",<br>
- "{cc}", "cc",<br>
- 0,0};<br>
-<br>
-X86MCAsmInfoDarwin::X86MCAsmInfoDarwin(const Triple &Triple) {<br>
- AsmTransCBE = x86_asm_table;<br>
- AssemblerDialect = AsmWriterFlavor;<br>
-<br>
- bool is64Bit = Triple.getArch() == Triple::x86_64;<br>
-<br>
- TextAlignFillValue = 0x90;<br>
-<br>
- if (!is64Bit)<br>
- Data64bitsDirective = 0; // we can't emit a 64-bit unit<br>
-<br>
- // Use ## as a comment string so that .s files generated by llvm can go<br>
- // through the GCC preprocessor without causing an error. This is needed<br>
- // because "clang foo.s" runs the C preprocessor, which is usually reserved<br>
- // for .S files on other systems. Perhaps this is because the file system<br>
- // wasn't always case preserving or something.<br>
- CommentString = "##";<br>
- PCSymbol = ".";<br>
-<br>
- SupportsDebugInformation = true;<br>
- DwarfUsesInlineInfoSection = true;<br>
-<br>
- // Exceptions handling<br>
- ExceptionsType = ExceptionHandling::DwarfCFI;<br>
-}<br>
-<br>
-const MCExpr *<br>
-X86_64MCAsmInfoDarwin::getExprForPersonalitySymbol(const MCSymbol *Sym,<br>
- unsigned Encoding,<br>
- MCStreamer &Streamer) const {<br>
- MCContext &Context = Streamer.getContext();<br>
- const MCExpr *Res =<br>
- MCSymbolRefExpr::Create(Sym, MCSymbolRefExpr::VK_GOTPCREL, Context);<br>
- const MCExpr *Four = MCConstantExpr::Create(4, Context);<br>
- return MCBinaryExpr::CreateAdd(Res, Four, Context);<br>
-}<br>
-<br>
-X86_64MCAsmInfoDarwin::X86_64MCAsmInfoDarwin(const Triple &Triple)<br>
- : X86MCAsmInfoDarwin(Triple) {<br>
-}<br>
-<br>
-X86ELFMCAsmInfo::X86ELFMCAsmInfo(const Triple &T) {<br>
- AsmTransCBE = x86_asm_table;<br>
- AssemblerDialect = AsmWriterFlavor;<br>
-<br>
- TextAlignFillValue = 0x90;<br>
-<br>
- PrivateGlobalPrefix = ".L";<br>
- WeakRefDirective = "\t.weak\t";<br>
- PCSymbol = ".";<br>
-<br>
- // Set up DWARF directives<br>
- HasLEB128 = true; // Target asm supports leb128 directives (little-endian)<br>
-<br>
- // Debug Information<br>
- SupportsDebugInformation = true;<br>
-<br>
- // Exceptions handling<br>
- ExceptionsType = ExceptionHandling::DwarfCFI;<br>
-<br>
- // OpenBSD has buggy support for .quad in 32-bit mode, just split into two<br>
- // .words.<br>
- if (T.getOS() == Triple::OpenBSD && T.getArch() == Triple::x86)<br>
- Data64bitsDirective = 0;<br>
-}<br>
-<br>
-const MCSection *X86ELFMCAsmInfo::<br>
-getNonexecutableStackSection(MCContext &Ctx) const {<br>
- return Ctx.getELFSection(".note.GNU-stack", ELF::SHT_PROGBITS,<br>
- 0, SectionKind::getMetadata());<br>
-}<br>
-<br>
-X86MCAsmInfoCOFF::X86MCAsmInfoCOFF(const Triple &Triple) {<br>
- if (Triple.getArch() == Triple::x86_64) {<br>
- GlobalPrefix = "";<br>
- PrivateGlobalPrefix = ".L";<br>
- }<br>
-<br>
- AsmTransCBE = x86_asm_table;<br>
- AssemblerDialect = AsmWriterFlavor;<br>
-<br>
- TextAlignFillValue = 0x90;<br>
-}<br>
<br>
Removed: llvm/trunk/lib/Target/X86/X86MCAsmInfo.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86MCAsmInfo.h?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86MCAsmInfo.h?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/X86/X86MCAsmInfo.h (original)<br>
+++ llvm/trunk/lib/Target/X86/X86MCAsmInfo.h (removed)<br>
@@ -1,46 +0,0 @@<br>
-//=====-- X86MCAsmInfo.h - X86 asm properties -----------------*- C++ -*--====//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declaration of the X86MCAsmInfo class.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#ifndef X86TARGETASMINFO_H<br>
-#define X86TARGETASMINFO_H<br>
-<br>
-#include "llvm/MC/MCAsmInfo.h"<br>
-#include "llvm/MC/MCAsmInfoCOFF.h"<br>
-#include "llvm/MC/MCAsmInfoDarwin.h"<br>
-<br>
-namespace llvm {<br>
- class Triple;<br>
-<br>
- struct X86MCAsmInfoDarwin : public MCAsmInfoDarwin {<br>
- explicit X86MCAsmInfoDarwin(const Triple &Triple);<br>
- };<br>
-<br>
- struct X86_64MCAsmInfoDarwin : public X86MCAsmInfoDarwin {<br>
- explicit X86_64MCAsmInfoDarwin(const Triple &Triple);<br>
- virtual const MCExpr *<br>
- getExprForPersonalitySymbol(const MCSymbol *Sym,<br>
- unsigned Encoding,<br>
- MCStreamer &Streamer) const;<br>
- };<br>
-<br>
- struct X86ELFMCAsmInfo : public MCAsmInfo {<br>
- explicit X86ELFMCAsmInfo(const Triple &Triple);<br>
- virtual const MCSection *getNonexecutableStackSection(MCContext &Ctx) const;<br>
- };<br>
-<br>
- struct X86MCAsmInfoCOFF : public MCAsmInfoCOFF {<br>
- explicit X86MCAsmInfoCOFF(const Triple &Triple);<br>
- };<br>
-} // namespace llvm<br>
-<br>
-#endif<br>
<br>
Modified: llvm/trunk/lib/Target/X86/X86MCInstLower.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86MCInstLower.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86MCInstLower.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/X86/X86MCInstLower.cpp (original)<br>
+++ llvm/trunk/lib/Target/X86/X86MCInstLower.cpp Thu Jul 14 18:50:31 2011<br>
@@ -16,8 +16,8 @@<br>
#include "X86MCInstLower.h"<br>
#include "X86AsmPrinter.h"<br>
#include "X86COFFMachineModuleInfo.h"<br>
-#include "X86MCAsmInfo.h"<br>
#include "llvm/CodeGen/MachineModuleInfoImpls.h"<br>
+#include "llvm/MC/MCAsmInfo.h"<br>
#include "llvm/MC/MCContext.h"<br>
#include "llvm/MC/MCExpr.h"<br>
#include "llvm/MC/MCInst.h"<br>
<br>
Modified: llvm/trunk/lib/Target/X86/X86TargetMachine.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86TargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86TargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/X86/X86TargetMachine.cpp (original)<br>
+++ llvm/trunk/lib/Target/X86/X86TargetMachine.cpp Thu Jul 14 18:50:31 2011<br>
@@ -11,7 +11,6 @@<br>
//<br>
//===----------------------------------------------------------------------===//<br>
<br>
-#include "X86MCAsmInfo.h"<br>
#include "X86TargetMachine.h"<br>
#include "X86.h"<br>
#include "llvm/PassManager.h"<br>
@@ -24,22 +23,6 @@<br>
#include "llvm/Target/TargetRegistry.h"<br>
using namespace llvm;<br>
<br>
-static MCAsmInfo *createMCAsmInfo(const Target &T, StringRef TT) {<br>
- Triple TheTriple(TT);<br>
-<br>
- if (TheTriple.isOSDarwin() || TheTriple.getEnvironment() == Triple::MachO) {<br>
- if (TheTriple.getArch() == Triple::x86_64)<br>
- return new X86_64MCAsmInfoDarwin(TheTriple);<br>
- else<br>
- return new X86MCAsmInfoDarwin(TheTriple);<br>
- }<br>
-<br>
- if (TheTriple.isOSWindows())<br>
- return new X86MCAsmInfoCOFF(TheTriple);<br>
-<br>
- return new X86ELFMCAsmInfo(TheTriple);<br>
-}<br>
-<br>
static MCStreamer *createMCStreamer(const Target &T, const std::string &TT,<br>
MCContext &Ctx, TargetAsmBackend &TAB,<br>
raw_ostream &_OS,<br>
@@ -62,10 +45,6 @@<br>
RegisterTargetMachine<X86_32TargetMachine> X(TheX86_32Target);<br>
RegisterTargetMachine<X86_64TargetMachine> Y(TheX86_64Target);<br>
<br>
- // Register the target asm info.<br>
- RegisterAsmInfoFn A(TheX86_32Target, createMCAsmInfo);<br>
- RegisterAsmInfoFn B(TheX86_64Target, createMCAsmInfo);<br>
-<br>
// Register the code emitter.<br>
TargetRegistry::RegisterCodeEmitter(TheX86_32Target,<br>
createX86MCCodeEmitter);<br>
<br>
Modified: llvm/trunk/lib/Target/XCore/MCTargetDesc/XCoreMCTargetDesc.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/XCore/MCTargetDesc/XCoreMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/XCore/MCTargetDesc/XCoreMCTargetDesc.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/XCore/MCTargetDesc/XCoreMCTargetDesc.cpp (original)<br>
+++ llvm/trunk/lib/Target/XCore/MCTargetDesc/XCoreMCTargetDesc.cpp Thu Jul 14 18:50:31 2011<br>
@@ -12,6 +12,7 @@<br>
//===----------------------------------------------------------------------===//<br>
<br>
#include "XCoreMCTargetDesc.h"<br>
+#include "XCoreMCAsmInfo.h"<br>
#include "llvm/MC/MCInstrInfo.h"<br>
#include "llvm/MC/MCRegisterInfo.h"<br>
#include "llvm/MC/MCSubtargetInfo.h"<br>
@@ -28,7 +29,7 @@<br>
<br>
using namespace llvm;<br>
<br>
-MCInstrInfo *createXCoreMCInstrInfo() {<br>
+static MCInstrInfo *createXCoreMCInstrInfo() {<br>
MCInstrInfo *X = new MCInstrInfo();<br>
InitXCoreMCInstrInfo(X);<br>
return X;<br>
@@ -38,8 +39,8 @@<br>
TargetRegistry::RegisterMCInstrInfo(TheXCoreTarget, createXCoreMCInstrInfo);<br>
}<br>
<br>
-MCSubtargetInfo *createXCoreMCSubtargetInfo(StringRef TT, StringRef CPU,<br>
- StringRef FS) {<br>
+static MCSubtargetInfo *createXCoreMCSubtargetInfo(StringRef TT, StringRef CPU,<br>
+ StringRef FS) {<br>
MCSubtargetInfo *X = new MCSubtargetInfo();<br>
InitXCoreMCSubtargetInfo(X, TT, CPU, FS);<br>
return X;<br>
@@ -49,3 +50,7 @@<br>
TargetRegistry::RegisterMCSubtargetInfo(TheXCoreTarget,<br>
createXCoreMCSubtargetInfo);<br>
}<br>
+<br>
+extern "C" void LLVMInitializeXCoreMCAsmInfo() {<br>
+ RegisterMCAsmInfo<XCoreMCAsmInfo> X(TheXCoreTarget);<br>
+}<br>
<br>
Modified: llvm/trunk/lib/Target/XCore/XCoreAsmPrinter.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/XCore/XCoreAsmPrinter.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/XCore/XCoreAsmPrinter.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/XCore/XCoreAsmPrinter.cpp (original)<br>
+++ llvm/trunk/lib/Target/XCore/XCoreAsmPrinter.cpp Thu Jul 14 18:50:31 2011<br>
@@ -16,7 +16,6 @@<br>
#include "XCore.h"<br>
#include "XCoreInstrInfo.h"<br>
#include "XCoreSubtarget.h"<br>
-#include "XCoreMCAsmInfo.h"<br>
#include "XCoreTargetMachine.h"<br>
#include "llvm/Constants.h"<br>
#include "llvm/DerivedTypes.h"<br>
@@ -27,6 +26,7 @@<br>
#include "llvm/CodeGen/MachineConstantPool.h"<br>
#include "llvm/CodeGen/MachineInstr.h"<br>
#include "llvm/CodeGen/MachineJumpTableInfo.h"<br>
+#include "llvm/MC/MCAsmInfo.h"<br>
#include "llvm/MC/MCStreamer.h"<br>
#include "llvm/MC/MCSymbol.h"<br>
#include "llvm/Target/Mangler.h"<br>
<br>
Removed: llvm/trunk/lib/Target/XCore/XCoreMCAsmInfo.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/XCore/XCoreMCAsmInfo.cpp?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/XCore/XCoreMCAsmInfo.cpp?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/XCore/XCoreMCAsmInfo.cpp (original)<br>
+++ llvm/trunk/lib/Target/XCore/XCoreMCAsmInfo.cpp (removed)<br>
@@ -1,29 +0,0 @@<br>
-//===-- XCoreMCAsmInfo.cpp - XCore asm properties -------------------------===//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#include "XCoreMCAsmInfo.h"<br>
-using namespace llvm;<br>
-<br>
-XCoreMCAsmInfo::XCoreMCAsmInfo(const Target &T, StringRef TT) {<br>
- SupportsDebugInformation = true;<br>
- Data16bitsDirective = "\t.short\t";<br>
- Data32bitsDirective = "\t.long\t";<br>
- Data64bitsDirective = 0;<br>
- ZeroDirective = "\t.space\t";<br>
- CommentString = "#";<br>
-<br>
- PrivateGlobalPrefix = ".L";<br>
- AscizDirective = ".asciiz";<br>
- WeakDefDirective = "\t.weak\t";<br>
- WeakRefDirective = "\t.weak\t";<br>
-<br>
- // Debug<br>
- HasLEB128 = true;<br>
-}<br>
-<br>
<br>
Removed: llvm/trunk/lib/Target/XCore/XCoreMCAsmInfo.h<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/XCore/XCoreMCAsmInfo.h?rev=135218&view=auto" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/XCore/XCoreMCAsmInfo.h?rev=135218&view=auto</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/XCore/XCoreMCAsmInfo.h (original)<br>
+++ llvm/trunk/lib/Target/XCore/XCoreMCAsmInfo.h (removed)<br>
@@ -1,30 +0,0 @@<br>
-//=====-- XCoreMCAsmInfo.h - XCore asm properties -------------*- C++ -*--====//<br>
-//<br>
-// The LLVM Compiler Infrastructure<br>
-//<br>
-// This file is distributed under the University of Illinois Open Source<br>
-// License. See LICENSE.TXT for details.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-//<br>
-// This file contains the declaration of the XCoreMCAsmInfo class.<br>
-//<br>
-//===----------------------------------------------------------------------===//<br>
-<br>
-#ifndef XCORETARGETASMINFO_H<br>
-#define XCORETARGETASMINFO_H<br>
-<br>
-#include "llvm/ADT/StringRef.h"<br>
-#include "llvm/MC/MCAsmInfo.h"<br>
-<br>
-namespace llvm {<br>
- class Target;<br>
-<br>
- class XCoreMCAsmInfo : public MCAsmInfo {<br>
- public:<br>
- explicit XCoreMCAsmInfo(const Target &T, StringRef TT);<br>
- };<br>
-<br>
-} // namespace llvm<br>
-<br>
-#endif<br>
<br>
Modified: llvm/trunk/lib/Target/XCore/XCoreTargetMachine.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/XCore/XCoreTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/XCore/XCoreTargetMachine.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/lib/Target/XCore/XCoreTargetMachine.cpp (original)<br>
+++ llvm/trunk/lib/Target/XCore/XCoreTargetMachine.cpp Thu Jul 14 18:50:31 2011<br>
@@ -10,7 +10,6 @@<br>
//<br>
//===----------------------------------------------------------------------===//<br>
<br>
-#include "XCoreMCAsmInfo.h"<br>
#include "XCoreTargetMachine.h"<br>
#include "XCore.h"<br>
#include "llvm/Module.h"<br>
@@ -42,5 +41,4 @@<br>
// Force static initialization.<br>
extern "C" void LLVMInitializeXCoreTarget() {<br>
RegisterTargetMachine<XCoreTargetMachine> X(TheXCoreTarget);<br>
- RegisterAsmInfo<XCoreMCAsmInfo> Y(TheXCoreTarget);<br>
}<br>
<br>
Modified: llvm/trunk/tools/llc/llc.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llc/llc.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llc/llc.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/tools/llc/llc.cpp (original)<br>
+++ llvm/trunk/tools/llc/llc.cpp Thu Jul 14 18:50:31 2011<br>
@@ -201,6 +201,7 @@<br>
<br>
// Initialize targets first, so that --version shows registered targets.<br>
InitializeAllTargets();<br>
+ InitializeAllMCAsmInfos();<br>
InitializeAllMCInstrInfos();<br>
InitializeAllMCSubtargetInfos();<br>
InitializeAllAsmPrinters();<br>
<br>
Modified: llvm/trunk/tools/llvm-mc/Disassembler.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-mc/Disassembler.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-mc/Disassembler.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/tools/llvm-mc/Disassembler.cpp (original)<br>
+++ llvm/trunk/tools/llvm-mc/Disassembler.cpp Thu Jul 14 18:50:31 2011<br>
@@ -132,7 +132,7 @@<br>
MemoryBuffer &Buffer,<br>
raw_ostream &Out) {<br>
// Set up disassembler.<br>
- OwningPtr<const MCAsmInfo> AsmInfo(T.createAsmInfo(Triple));<br>
+ OwningPtr<const MCAsmInfo> AsmInfo(T.createMCAsmInfo(Triple));<br>
<br>
if (!AsmInfo) {<br>
errs() << "error: no assembly info for target " << Triple << "\n";<br>
<br>
Modified: llvm/trunk/tools/llvm-mc/llvm-mc.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-mc/llvm-mc.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-mc/llvm-mc.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/tools/llvm-mc/llvm-mc.cpp (original)<br>
+++ llvm/trunk/tools/llvm-mc/llvm-mc.cpp Thu Jul 14 18:50:31 2011<br>
@@ -196,7 +196,7 @@<br>
if (!TheTarget)<br>
return 1;<br>
<br>
- llvm::OwningPtr<MCAsmInfo> MAI(TheTarget->createAsmInfo(TripleName));<br>
+ llvm::OwningPtr<MCAsmInfo> MAI(TheTarget->createMCAsmInfo(TripleName));<br>
assert(MAI && "Unable to create target asm info!");<br>
<br>
AsmLexer Lexer(*MAI);<br>
@@ -306,7 +306,7 @@<br>
SrcMgr.setIncludeDirs(IncludeDirs);<br>
<br>
<br>
- llvm::OwningPtr<MCAsmInfo> MAI(TheTarget->createAsmInfo(TripleName));<br>
+ llvm::OwningPtr<MCAsmInfo> MAI(TheTarget->createMCAsmInfo(TripleName));<br>
assert(MAI && "Unable to create target asm info!");<br>
<br>
// Package up features to be passed to target/subtarget<br>
@@ -436,6 +436,7 @@<br>
llvm::InitializeAllTargetInfos();<br>
// FIXME: We shouldn't need to initialize the Target(Machine)s.<br>
llvm::InitializeAllTargets();<br>
+ llvm::InitializeAllMCAsmInfos();<br>
llvm::InitializeAllMCInstrInfos();<br>
llvm::InitializeAllMCSubtargetInfos();<br>
llvm::InitializeAllAsmPrinters();<br>
<br>
Modified: llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp (original)<br>
+++ llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp Thu Jul 14 18:50:31 2011<br>
@@ -174,7 +174,7 @@<br>
outs() << "Disassembly of section " << name << ":\n\n";<br>
<br>
// Set up disassembler.<br>
- OwningPtr<const MCAsmInfo> AsmInfo(TheTarget->createAsmInfo(TripleName));<br>
+ OwningPtr<const MCAsmInfo> AsmInfo(TheTarget->createMCAsmInfo(TripleName));<br>
<br>
if (!AsmInfo) {<br>
errs() << "error: no assembly info for target " << TripleName << "\n";<br>
@@ -236,6 +236,7 @@<br>
llvm::InitializeAllTargetInfos();<br>
// FIXME: We shouldn't need to initialize the Target(Machine)s.<br>
llvm::InitializeAllTargets();<br>
+ llvm::InitializeAllMCAsmInfos();<br>
llvm::InitializeAllAsmPrinters();<br>
llvm::InitializeAllAsmParsers();<br>
llvm::InitializeAllDisassemblers();<br>
<br>
Modified: llvm/trunk/tools/lto/LTOCodeGenerator.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/lto/LTOCodeGenerator.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/lto/LTOCodeGenerator.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/tools/lto/LTOCodeGenerator.cpp (original)<br>
+++ llvm/trunk/tools/lto/LTOCodeGenerator.cpp Thu Jul 14 18:50:31 2011<br>
@@ -73,6 +73,7 @@<br>
_nativeObjectFile(NULL)<br>
{<br>
InitializeAllTargets();<br>
+ InitializeAllMCAsmInfos();<br>
InitializeAllMCSubtargetInfos();<br>
InitializeAllAsmPrinters();<br>
}<br>
<br>
Modified: llvm/trunk/tools/lto/LTOModule.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/lto/LTOModule.cpp?rev=135219&r1=135218&r2=135219&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/lto/LTOModule.cpp?rev=135219&r1=135218&r2=135219&view=diff</a><br>
==============================================================================<br>
--- llvm/trunk/tools/lto/LTOModule.cpp (original)<br>
+++ llvm/trunk/tools/lto/LTOModule.cpp Thu Jul 14 18:50:31 2011<br>
@@ -135,6 +135,7 @@<br>
static bool Initialized = false;<br>
if (!Initialized) {<br>
InitializeAllTargets();<br>
+ InitializeAllMCAsmInfos();<br>
InitializeAllMCSubtargetInfos();<br>
InitializeAllAsmParsers();<br>
Initialized = true;<br>
<br>
<br>
_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br>
</blockquote></div><br>
</blockquote></div><br></div></body></html>