aboutsummaryrefslogtreecommitdiffstats
path: root/utils/TableGen/DAGISelEmitter.h
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2006-07-15 08:45:20 +0000
committerEvan Cheng <evan.cheng@apple.com>2006-07-15 08:45:20 +0000
commitfceb57a917bf4037a6653ca00441584f190a14e1 (patch)
tree7960ee48a3a3c2b855d6a148671aa6c54fe4a005 /utils/TableGen/DAGISelEmitter.h
parent0c4e6789da4dba6c7b0010886776b24dec3f3bb8 (diff)
downloadexternal_llvm-fceb57a917bf4037a6653ca00441584f190a14e1.zip
external_llvm-fceb57a917bf4037a6653ca00441584f190a14e1.tar.gz
external_llvm-fceb57a917bf4037a6653ca00441584f190a14e1.tar.bz2
Reduce instruction selection code size and stack frame size by factoring
code that emit target specific nodes into emit functions that are uniquified and shared among selection routines. e.g. This reduces X86ISelDAGToDAG.o (release) from ~2M to ~1.5M. Stack frame size of Select_store from ~13k down to ~8k. This is the first step. Further work to enable more sharing will follow. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29158 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/TableGen/DAGISelEmitter.h')
-rw-r--r--utils/TableGen/DAGISelEmitter.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/utils/TableGen/DAGISelEmitter.h b/utils/TableGen/DAGISelEmitter.h
index 8a8bf3d..f0c7376 100644
--- a/utils/TableGen/DAGISelEmitter.h
+++ b/utils/TableGen/DAGISelEmitter.h
@@ -522,7 +522,8 @@ private:
void GenerateCodeForPattern(PatternToMatch &Pattern,
std::vector<std::pair<bool, std::string> > &GeneratedCode,
std::set<std::pair<bool, std::string> > &GeneratedDecl,
- bool UseGoto);
+ std::vector<std::string> &TargetOpcodes,
+ bool DoReplace);
void EmitPatterns(std::vector<std::pair<PatternToMatch*,
std::vector<std::pair<bool, std::string> > > > &Patterns,
unsigned Indent, std::ostream &OS);