Generate a table-driven version of TRI::composeSubRegIndices().
authorJakob Stoklund Olesen <stoklund@2pi.dk>
Thu, 1 Nov 2012 00:32:10 +0000 (00:32 +0000)
committerJakob Stoklund Olesen <stoklund@2pi.dk>
Thu, 1 Nov 2012 00:32:10 +0000 (00:32 +0000)
commitad0b3b21e3abea7a9e9918ae1724f7dd7376b2cf
tree464b4e08c94bd0d7687db3ad8d1a52e1482020b5
parent3037a58a218c6ca60214e1756951576c3a780b4a
Generate a table-driven version of TRI::composeSubRegIndices().

Explicitly allow composition of null sub-register indices, and handle
that common case in an inlinable stub.

Use a compressed table implementation instead of the previous nested
switches which generated pretty bad code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167190 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/Target/TargetRegisterInfo.h
utils/TableGen/RegisterInfoEmitter.cpp