- Feb 23, 2012
-
-
Craig Topper authored
llvm-svn: 151246
-
- Feb 22, 2012
-
-
Craig Topper authored
Declare register classes as const. Fix a couple pointers to register classes that weren't already const. llvm-svn: 151138
-
Craig Topper authored
Make all pointers to TargetRegisterClass const since they are all pointers to static data that should not be modified. llvm-svn: 151134
-
- Feb 21, 2012
-
-
Craig Topper authored
llvm-svn: 151043
-
Craig Topper authored
In generated RegisterInfo files, replace a pointer to the end of an array with just the size of the array to avoid relocations. llvm-svn: 151041
-
Craig Topper authored
Merge some tables in generated RegisterInfo file. Store indices into larger 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
-
- Feb 19, 2012
-
-
Ahmed Charles authored
llvm-svn: 150918
-
Craig Topper authored
llvm-svn: 150899
-
- Feb 18, 2012
-
-
Craig Topper authored
Add X86 assembler and disassembler support for AMD SVM instructions. Original patch by Kay Tiong Khoo. Few tweaks by me for code density and to reduce replication. llvm-svn: 150873
-
- Feb 11, 2012
-
-
Benjamin Kramer authored
llvm-svn: 150304
-
Benjamin Kramer authored
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
-
- Feb 10, 2012
-
-
Benjamin Kramer authored
Put instruction names into an indexed string table on the side, removing a 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
-
- Feb 09, 2012
-
-
Benjamin Kramer authored
Store just the SimpleValueType in the generated VT tables for each register class, eliminating static ctors. llvm-svn: 150173
-
Benjamin Kramer authored
No change on i386. llvm-svn: 150170
-
James Molloy authored
Teach the MC and disassembler about SoftFail, and hook it up to UNPREDICTABLE on ARM. Wire this to tBLX in order to provide test coverage. llvm-svn: 150169
-
Craig Topper authored
llvm-svn: 150167
-
Craig Topper authored
Flatten some of the arrays in the X86 disassembler tables to reduce space needed to store pointers on 64-bit hosts and reduce relocations needed at startup. Part of PR11953. llvm-svn: 150161
-
- Feb 08, 2012
-
-
Benjamin Kramer authored
X86GenRegisterInfo.inc | 1032 ------------------------------------------------- 1 file changed, 1032 deletions(-) llvm-svn: 150080
-
Benjamin Kramer authored
llvm-svn: 150076
-
- Feb 05, 2012
-
-
Craig Topper authored
llvm-svn: 149814
-
- Feb 03, 2012
-
-
Brendon Cahoon authored
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
-
- Feb 02, 2012
-
-
Jakob Stoklund Olesen authored
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
-
- Feb 01, 2012
-
-
Jakob Stoklund Olesen authored
The final tie breaker comparison also needs to return +/-1, or 0. This is not a less() function. This could cause otherwise identical super-classes to be ordered unstably, depending on what the system qsort routine does with a bad compare function. llvm-svn: 149549
-
Jakob Stoklund Olesen authored
It's only by luck that we haven't produced any yet, and clang refuses to compile them. llvm-svn: 149546
-
- Jan 31, 2012
-
-
Jakob Stoklund Olesen authored
It was wrong and completely unused. llvm-svn: 149433
-
Jakob Stoklund Olesen authored
Each SubRegIndex keeps track of how it composes. llvm-svn: 149423
-
Jakob Stoklund Olesen authored
This class is used to represent SubRegIndex instances instead of the raw Record pointers that were used before. No functional change intended. llvm-svn: 149418
-
- Jan 24, 2012
-
-
Jim Grosbach authored
llvm-svn: 148856
-
Owen Anderson authored
Widen the instruction encoder that TblGen emits to a 64 bits, which should accomodate every target I can think of offhand. llvm-svn: 148833
-
Jakob Stoklund Olesen authored
This will interleave the elements from two or more lists. llvm-svn: 148824
-
- Jan 18, 2012
-
-
Jakob Stoklund Olesen authored
When set, this bit indicates that a register is completely defined by the value of its sub-registers. Use the CoveredBySubRegs property to infer which super-registers are call-preserved given a list of callee-saved registers. For example, the ARM registers D8-D15 are callee-saved. This now automatically implies that Q4-Q7 are call-preserved. Conversely, Win64 callees save XMM6-XMM15, but the corresponding YMM6-YMM15 registers are not call-preserved because they are not fully defined by their sub-registers. llvm-svn: 148363
-
- Jan 17, 2012
-
-
Jakob Stoklund Olesen authored
Targets can now add CalleeSavedRegs defs to their *CallingConv.td file. TableGen will use this to create a *_SaveList array suitable for returning from getCalleeSavedRegs() as well as a *_RegMask bit mask suitable for returning from getCallPreservedMask(). llvm-svn: 148346
-
Devang Patel authored
llvm-svn: 148316
-
David Blaikie authored
llvm-svn: 148293
-
David Blaikie authored
llvm-svn: 148284
-
David Blaikie authored
Removing unused default switch cases in switches over enums that already account for all enumeration values explicitly. (This time I believe I've checked all the -Wreturn-type warnings from GCC & added the couple of llvm_unreachables necessary to silence them. If I've missed any, I'll happily fix them as soon as I know about them) llvm-svn: 148262
-
- Jan 13, 2012
-
-
Jakob Stoklund Olesen authored
llvm-svn: 148147
-
Jakob Stoklund Olesen authored
The code type was always identical to a string anyway. Now it is simply a synonym. The code literal syntax [{...}] is still valid. llvm-svn: 148092
-
Pete Cooper authored
llvm-svn: 148067
-
- Jan 10, 2012
-
-
Devang Patel authored
llvm-svn: 147858
-