- May 26, 2010
-
-
Jakob Stoklund Olesen authored
This means that our Registers are now ordered R7, R8, R9, R10, R12, ... Not R1, R10, R11, R12, R2, R3, ... llvm-svn: 104745
-
Jakob Stoklund Olesen authored
llvm-svn: 104741
-
Jakob Stoklund Olesen authored
A Register with subregisters must also provide SubRegIndices for adressing the subregisters. TableGen automatically inherits indices for sub-subregisters to minimize typing. CompositeIndices may be specified for the weirder cases such as the XMM sub_sd index that returns the same register, and ARM NEON Q registers where both D subregs have ssub_0 and ssub_1 sub-subregs. It is now required that all subregisters are named by an index, and a future patch will also require inherited subregisters to be named. This is necessary to allow composite subregister indices to be reduced to a single index. llvm-svn: 104704
-
Jakob Stoklund Olesen authored
This reverts commit 104654. llvm-svn: 104660
-
Jakob Stoklund Olesen authored
A Register with subregisters must also provide SubRegIndices for adressing the subregisters. TableGen automatically inherits indices for sub-subregisters to minimize typing. CompositeIndices may be specified for the weirder cases such as the XMM sub_sd index that returns the same register, and ARM NEON Q registers where both D subregs have ssub_0 and ssub_1 sub-subregs. It is now required that all subregisters are named by an index, and a future patch will also require inherited subregisters to be named. This is necessary to allow composite subregister indices to be reduced to a single index. llvm-svn: 104654
-
Jakob Stoklund Olesen authored
llvm-svn: 104650
-
- May 25, 2010
-
-
Jakob Stoklund Olesen authored
llvm-svn: 104628
-
Jakob Stoklund Olesen authored
This passes lit tests, but I'll give it a go through the buildbots to smoke out any remaining places that depend on the old SubRegIndex numbering. Then I'll remove NumberHack entirely. llvm-svn: 104615
-
Jakob Stoklund Olesen authored
llvm-svn: 104571
-
- May 24, 2010
-
-
Chris Lattner authored
llvm-svn: 104567
-
Jakob Stoklund Olesen authored
structure that represents a mapping without any dependencies on SubRegIndex numbering. This brings us closer to being able to remove the explicit SubRegIndex numbering, and it is now possible to specify any mapping without inventing *_INVALID register classes. llvm-svn: 104563
-
Jakob Stoklund Olesen authored
This is the beginning of purely symbolic subregister indices, but we need a bit of jiggling before the explicit numeric indices can be completely removed. llvm-svn: 104492
-
- May 22, 2010
-
-
Daniel Dunbar authored
llvm-svn: 104452
-
- May 20, 2010
-
-
Daniel Dunbar authored
it. llvm-svn: 104270
-
- May 18, 2010
-
-
Alexis Hunt authored
Also rename ABSTRACT to ABSTRACT_STMT llvm-svn: 104018
-
- May 14, 2010
-
-
Evan Cheng authored
llvm-svn: 103760
-
Evan Cheng authored
Adding a v8i64 512-bit vector type. This will be used to model ARM NEON intrinsics which translate into a pair of vld / vst instructions that can load / store 8 consecutive 64-bit (D) registers. llvm-svn: 103746
-
- May 13, 2010
-
-
Chandler Carruth authored
llvm-svn: 103704
-
- May 12, 2010
-
-
Dan Gohman authored
llvm-svn: 103529
-
- May 11, 2010
-
-
Douglas Gregor authored
llvm-svn: 103457
-
- May 06, 2010
-
-
Sean Callanan authored
and %rcr_, leaving just %cr_ which is what people expect. Updated the disassembler to support this unified register set. Added a testcase to verify that the registers continue to be decoded correctly. llvm-svn: 103196
-
Dan Gohman authored
doesn't have to guess. llvm-svn: 103194
-
Evan Cheng authored
Re-apply 103156 and 103157. 103156 didn't break anything. 10315 exposed a coalescer bug that's fixed by 103170. llvm-svn: 103172
-
Alexis Hunt authored
llvm-svn: 103164
-
- May 05, 2010
-
-
Shantonu Sen authored
when building llvm with clang llvm-svn: 103084
-
Alexis Hunt authored
llvm-svn: 103073
-
Alexis Hunt authored
llvm-svn: 103071
-
- May 04, 2010
-
-
Chris Lattner authored
and diagnostic groups. This allows the compiler to group diagnostics together (e.g. "Logic Warning", "Format String Warning", etc) like the static analyzer does. This is not exposed through anything in the compiler yet. llvm-svn: 103050
-
Daniel Dunbar authored
name (for example, to allow targets to interpose the actual MatchInstruction function). llvm-svn: 102987
-
- May 01, 2010
-
-
Evan Cheng authored
sub-register indices and outputs a single super register which is formed from a consecutive sequence of registers. This is used as register allocation / coalescing aid and it is useful to represent instructions that output register pairs / quads. For example, v1024, v1025 = vload <address> where v1024 and v1025 forms a register pair. This really should be modelled as v1024<3>, v1025<4> = vload <address> but it would violate SSA property before register allocation is done. Currently we use insert_subreg to form the super register: v1026 = implicit_def v1027 - insert_subreg v1026, v1024, 3 v1028 = insert_subreg v1027, v1025, 4 ... = use v1024 = use v1028 But this adds pseudo live interval overlap between v1024 and v1025. We can now modeled it as v1024, v1025 = vload <address> v1026 = REG_SEQUENCE v1024, 3, v1025, 4 ... = use v1024 = use v1026 After coalescing, it will be v1026<3>, v1025<4> = vload <address> ... = use v1026<3> = use v1026 llvm-svn: 102815
-
- Apr 24, 2010
-
-
Sean Callanan authored
memory operands rather than immediate operands. llvm-svn: 102217
-
- Apr 20, 2010
-
-
Johnny Chen authored
as their generic counterparts t2ADDri12/t2SUBri12 should suffice. llvm-svn: 101929
-
Chris Lattner authored
llvm-svn: 101881
-
Chris Lattner authored
llvm-svn: 101880
-
- Apr 18, 2010
-
-
Anton Korobeynikov authored
FU per CPU arch to 32 per intinerary allowing precise modelling of quite complex pipelines in the future. llvm-svn: 101754
-
- Apr 15, 2010
-
-
Dan Gohman authored
llvm-svn: 101376
-
- Apr 14, 2010
-
-
Benjamin Kramer authored
llvm-svn: 101241
-
- Apr 13, 2010
-
-
Sean Callanan authored
code. It used to #include the enhanced disassembly information for the targets it supported straight out of lib/Target/{X86,ARM,...} but now it uses a new interface provided by MCDisassembler, and (so far) implemented by X86 and ARM. Also removed hacky #define-controlled initialization of targets in edis. If clients only want edis to initialize a limited set of targets, they can set --enable-targets on the configure command line. llvm-svn: 101179
-
- Apr 09, 2010
-
-
Johnny Chen authored
We are bound to fail! For proper disassembly, the well-known encoding bits of the instruction must be fully specified. This also removes pseudo instructions from considerations of disassembly, which is a better design and less fragile than the name matchings. llvm-svn: 100899
-
Bob Wilson authored
such that the non-VFP versions have no implicit defs of VFP registers. If any callee-saved VFP registers are marked as having been defined, the prologue/epilogue code will try to save and restore them. Radar 7770432. llvm-svn: 100892
-