summaryrefslogtreecommitdiffstats
path: root/llvm/utils/TableGen
diff options
context:
space:
mode:
authorBenjamin Kramer <benny.kra@googlemail.com>2009-11-14 16:37:18 +0000
committerBenjamin Kramer <benny.kra@googlemail.com>2009-11-14 16:37:18 +0000
commit8c19a8f17bb0f1464c9e74e776bc1122426f4fe0 (patch)
treefbd7889138be2a483668690d08cd8aa4b4a83e91 /llvm/utils/TableGen
parent5e738284d73dbbf80f706a9ad5cadbaf7e208cf2 (diff)
downloadbcm5719-llvm-8c19a8f17bb0f1464c9e74e776bc1122426f4fe0.tar.gz
bcm5719-llvm-8c19a8f17bb0f1464c9e74e776bc1122426f4fe0.zip
Implement DISABLE_INLINE for MSVC. This required changing the position in all
forward declaration and patching tblgen to emit it right. Patch by Amine Khaldi! llvm-svn: 88798
Diffstat (limited to 'llvm/utils/TableGen')
-rw-r--r--llvm/utils/TableGen/DAGISelEmitter.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/llvm/utils/TableGen/DAGISelEmitter.cpp b/llvm/utils/TableGen/DAGISelEmitter.cpp
index 89b7400cb31..0c78f56404f 100644
--- a/llvm/utils/TableGen/DAGISelEmitter.cpp
+++ b/llvm/utils/TableGen/DAGISelEmitter.cpp
@@ -1786,11 +1786,7 @@ void DAGISelEmitter::EmitInstructionSelector(raw_ostream &OS) {
}
CallerCode += ");";
- CalleeCode += ") ";
- // Prevent emission routines from being inlined to reduce selection
- // routines stack frame sizes.
- CalleeCode += "DISABLE_INLINE ";
- CalleeCode += "{\n";
+ CalleeCode += ") {\n";
for (std::vector<std::string>::const_reverse_iterator
I = AddedInits.rbegin(), E = AddedInits.rend(); I != E; ++I)
@@ -1811,6 +1807,9 @@ void DAGISelEmitter::EmitInstructionSelector(raw_ostream &OS) {
} else {
EmitFuncNum = EmitFunctions.size();
EmitFunctions.insert(std::make_pair(CalleeCode, EmitFuncNum));
+ // Prevent emission routines from being inlined to reduce selection
+ // routines stack frame sizes.
+ OS << "DISABLE_INLINE ";
OS << "SDNode *Emit_" << utostr(EmitFuncNum) << CalleeCode;
}
OpenPOWER on IntegriCloud