OSDN Git Service

PR21101: tablegen's FastISel emitter should filter out unused functions.
authorBob Wilson <bob.wilson@apple.com>
Wed, 1 Oct 2014 22:44:01 +0000 (22:44 +0000)
committerBob Wilson <bob.wilson@apple.com>
Wed, 1 Oct 2014 22:44:01 +0000 (22:44 +0000)
commit52c08fdb906cbdaa10cb5f46351ebc777debf292
treea372ad6516a3fb59f0c9e74207cdea481e78265b
parent959030a38cefa7a311c939f94dc89c87ca03cb18
PR21101: tablegen's FastISel emitter should filter out unused functions.

FastISel has a fixed set of virtual functions that are overridden by the
tablegen-generated code for each target. These functions are distinguished by
the kinds of operands, e.g., register + immediate = "ri". The FastISel emitter
has been blindly emitting functions with different combinations of operand
kinds, even for combinations that are completely unused by FastISel, e.g.,
"fastEmit_rrr". Change to filter out functions that will be irrelevant for
FastISel and do not bother generating the code for them. Also add explicit
"override" keywords for the virtual functions that are overridden.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@218838 91177308-0d34-0410-b5e6-96231b3b80d8
utils/TableGen/FastISelEmitter.cpp