| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 152104
|
| |
|
|
| |
llvm-svn: 152067
|
| |
|
|
|
|
| |
Use the new composite physical registers.
llvm-svn: 152063
|
| |
|
|
|
|
|
|
|
| |
With the new composite physical registers to represent arbitrary pairs
of DPR registers, we don't need the pseudo-registers anymore. Get rid of
a bunch of them that use DPR register pairs and just use the real
instructions directly instead.
llvm-svn: 152045
|
| |
|
|
| |
llvm-svn: 152019
|
| |
|
|
|
|
| |
static data size.
llvm-svn: 152016
|
| |
|
|
| |
llvm-svn: 152001
|
| |
|
|
|
|
| |
static data size.
llvm-svn: 151998
|
| |
|
|
|
|
| |
size of static data.
llvm-svn: 151996
|
| |
|
|
|
|
| |
Shaves 150k off the size of X86DisassemblerDecoder.o
llvm-svn: 151995
|
| |
|
|
| |
llvm-svn: 151986
|
| |
|
|
|
|
|
|
|
|
|
|
| |
- Shrink the opcode field to 16 bits.
- Shrink the AsmVariantID field to 8 bits.
- Store the mnemonic string in a string table, store a 16 bit index.
- Store a pascal-style length byte in the string instead of a null terminator,
so we can avoid calling strlen on every entry we visit during mnemonic search.
Shrinks X86AsmParser.o from 434k to 201k on x86_64 and eliminates relocs from the table.
llvm-svn: 151984
|
| |
|
|
|
|
| |
appending a terminating null.
llvm-svn: 151983
|
| |
|
|
| |
llvm-svn: 151821
|
| |
|
|
|
|
|
|
| |
Allows us to de-virtualize the function and provides access to it in
the instruction printer, which is useful for handling composite
physical registers (e.g., ARM register lists).
llvm-svn: 151815
|
| |
|
|
|
|
|
|
|
|
| |
This reverts commit 151760.
We want to move getSubReg() from TargetRegisterInfo into MCRegisterInfo,
but to do that, the type of the lookup table needs to be the same for
all targets.
llvm-svn: 151814
|
| |
|
|
|
|
|
|
|
|
|
| |
function pointer.
This allows us to make TRC non-polymorphic and value-initializable, eliminating a huge static
initializer and a ton of cruft from the generated code.
Shrinks ARMBaseRegisterInfo.o by ~100k.
llvm-svn: 151806
|
| |
|
|
| |
llvm-svn: 151792
|
| |
|
|
|
|
| |
Shrinks BasicAliasAnalysis.o from 106k to 56k on i386.
llvm-svn: 151781
|
| |
|
|
|
|
|
|
|
| |
using a big switch.
- The search bounds are constant, in the worst case (ARM target) it will scan over 30 uint16_ts.
- This method isn't very hot, I had problems finding a testcase where it's called more than a dozen of times (no perf impact).
llvm-svn: 151773
|
| |
|
|
| |
llvm-svn: 151764
|
| |
|
|
|
|
| |
Doesn't help ARM with its massive register set, but halves the size on x86 and all other targets.
llvm-svn: 151760
|
| |
|
|
| |
llvm-svn: 151758
|
| |
|
|
| |
llvm-svn: 151756
|
| |
|
|
|
|
|
|
| |
Instead of nested switch statements, use a lookup table. On ARM, this replaces
a 23k (x86_64 release build) function with a 16k table. Its not unlikely to
be faster, as well.
llvm-svn: 151751
|
| |
|
|
|
|
| |
suggested in PR11951.
llvm-svn: 151622
|
| |
|
|
| |
llvm-svn: 151513
|
| |
|
|
|
|
| |
Kay Tiong Khoo.
llvm-svn: 151510
|
| |
|
|
|
|
| |
were added in r151038.
llvm-svn: 151246
|
| |
|
|
|
|
| |
that weren't already const.
llvm-svn: 151138
|
| |
|
|
|
|
| |
to static data that should not be modified.
llvm-svn: 151134
|
| |
|
|
| |
llvm-svn: 151043
|
| |
|
|
|
|
| |
with just the size of the array to avoid relocations.
llvm-svn: 151041
|
| |
|
|
|
|
| |
table instead of pointers to reduce relocations and shrink table size on 64-bit builds. Shaves ~24K off X86MCTargetDesc.o. Accidentally commited only part of this in r151038.
llvm-svn: 151039
|
| |
|
|
| |
llvm-svn: 150918
|
| |
|
|
| |
llvm-svn: 150899
|
| |
|
|
|
|
| |
Original patch by Kay Tiong Khoo. Few tweaks by me for code density and to reduce replication.
llvm-svn: 150873
|
| |
|
|
| |
llvm-svn: 150304
|
| |
|
|
|
|
|
| |
This requires some gymnastics to make it available for C code. Remove the names
from the disassembler tables, making them relocation free.
llvm-svn: 150303
|
| |
|
|
|
|
|
|
|
| |
pointer from MCInstrDesc.
Make them accessible through MCInstrInfo. They are only used for debugging purposes so this doesn't
have an impact on performance. X86MCTargetDesc.o goes from 630K to 461K on x86_64.
llvm-svn: 150245
|
| |
|
|
|
|
| |
class, eliminating static ctors.
llvm-svn: 150173
|
| |
|
|
|
|
|
|
| |
entry on x86_64.
No change on i386.
llvm-svn: 150170
|
| |
|
|
|
|
| |
UNPREDICTABLE on ARM. Wire this to tBLX in order to provide test coverage.
llvm-svn: 150169
|
| |
|
|
| |
llvm-svn: 150167
|
| |
|
|
|
|
| |
needed to store pointers on 64-bit hosts and reduce relocations needed at startup. Part of PR11953.
llvm-svn: 150161
|
| |
|
|
|
|
|
| |
X86GenRegisterInfo.inc | 1032 -------------------------------------------------
1 file changed, 1032 deletions(-)
llvm-svn: 150080
|
| |
|
|
|
|
| |
MCTargetDesc refactor.
llvm-svn: 150076
|
| |
|
|
| |
llvm-svn: 149814
|
| |
|
|
|
|
|
|
|
| |
When adding the {-1, -1} entry to the DFAStateInputTable, we
need to increment the index used to populate the DFAStateEntryTable.
Otherwise, the entry table will be off by one for each transition
after the {-1, -1} entry. PR11908.
llvm-svn: 149713
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It is simpler to define a composite index directly:
def ssub_2 : SubRegIndex<[dsub_1, ssub_0]>;
def ssub_3 : SubRegIndex<[dsub_1, ssub_1]>;
Than specifying the composite indices on each register:
CompositeIndices = [(ssub_2 dsub_1, ssub_0),
(ssub_3 dsub_1, ssub_1)] in ...
This also makes it clear that SubRegIndex composition is supposed to be
unique.
llvm-svn: 149556
|