| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 83526
|
|
|
|
| |
llvm-svn: 83522
|
|
|
|
| |
llvm-svn: 83521
|
|
|
|
| |
llvm-svn: 83518
|
|
|
|
| |
llvm-svn: 83513
|
|
|
|
| |
llvm-svn: 83508
|
|
|
|
| |
llvm-svn: 83506
|
|
|
|
| |
llvm-svn: 83502
|
|
|
|
|
|
| |
what's up.
llvm-svn: 83501
|
|
|
|
| |
llvm-svn: 83499
|
|
|
|
| |
llvm-svn: 83494
|
|
|
|
| |
llvm-svn: 83490
|
|
|
|
| |
llvm-svn: 83486
|
|
|
|
| |
llvm-svn: 83484
|
|
|
|
| |
llvm-svn: 83482
|
|
|
|
| |
llvm-svn: 83479
|
|
|
|
|
|
|
|
| |
with writeback, things like "sp!", etc. Also added some more stuff to the
temporarily hacked methods ARMAsmParser::MatchRegisterName and
ARMAsmParser::MatchInstruction to allow more parser testing.
llvm-svn: 83477
|
|
|
|
|
|
|
|
|
| |
implementations with a new MachineInstr::isInvariantLoad, which uses
MachineMemOperands and is target-independent. This brings MachineLICM
and other functionality to targets which previously lacked an
isInvariantLoad implementation.
llvm-svn: 83475
|
|
|
|
| |
llvm-svn: 83471
|
|
|
|
|
|
| |
This is just to be more consistent with the forthcoming code for vld3/4.
llvm-svn: 83470
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
a virtual register to eliminate a frame index, it can return that register
and the constant stored there to PEI to track. When scavenging to allocate
for those registers, PEI then tracks the last-used register and value, and
if it is still available and matches the value for the next index, reuses
the existing value rather and removes the re-materialization instructions.
Fancier tracking and adjustment of scavenger allocations to keep more
values live for longer is possible, but not yet implemented and would likely
be better done via a different, less special-purpose, approach to the
problem.
eliminateFrameIndex() is modified so the target implementations can return
the registers they wish to be tracked for reuse.
ARM Thumb1 implements and utilizes the new mechanism. All other targets are
simply modified to adjust for the changed eliminateFrameIndex() prototype.
llvm-svn: 83467
|
|
|
|
|
|
|
|
| |
something similar)
and register spills.
llvm-svn: 83435
|
|
|
|
|
|
|
| |
operands. Some parsing of arm memory operands for preindexing and postindexing
forms including with register controled shifts. This is a work in progress.
llvm-svn: 83424
|
|
|
|
| |
llvm-svn: 83422
|
|
|
|
| |
llvm-svn: 83421
|
|
|
|
|
|
| |
Patch by Johnny Chen.
llvm-svn: 83407
|
|
|
|
|
|
|
|
|
|
| |
verbose-asm mode, print comments instead. This eliminates a non-comment
difference between verbose-asm mode and non-verbose-asm mode.
Also, factor out the relevant code out of all the targets and into
target-independent code.
llvm-svn: 83392
|
|
|
|
|
|
| |
xs1a and xs1b.
llvm-svn: 83383
|
|
|
|
|
|
|
| |
early development boards which is no longer supported in the
XMOS toolchain.
llvm-svn: 83381
|
|
|
|
| |
llvm-svn: 83380
|
|
|
|
|
|
| |
and after printing an instruction.
llvm-svn: 83363
|
|
|
|
|
|
|
|
| |
spill slot. When frame references are via the frame pointer, they will be
negative, but Thumb1 load/store instructions only allow positive immediate
offsets. Instead, Thumb1 will spill to R12.
llvm-svn: 83336
|
|
|
|
|
|
| |
they make it less convenient to add new entries.
llvm-svn: 83308
|
|
|
|
|
|
| |
is used in an operand which requires GR64_NOREX.
llvm-svn: 83307
|
|
|
|
|
|
|
|
| |
the new predicates I added) instead of going through a context and doing a
pointer comparison. Besides being cheaper, this allows a smart compiler
to turn the if sequence into a switch.
llvm-svn: 83297
|
|
|
|
| |
llvm-svn: 83257
|
|
|
|
|
|
| |
Thanks to Johnny Chen for pointing this out!
llvm-svn: 83256
|
|
|
|
| |
llvm-svn: 83242
|
|
|
|
| |
llvm-svn: 83237
|
|
|
|
| |
llvm-svn: 83236
|
|
|
|
|
|
| |
-arm-use-neon-fp to override the default.
llvm-svn: 83218
|
|
|
|
|
|
| |
specification. Remove -mattr for setting PostRAScheduler enable and instead use CPU string.
llvm-svn: 83215
|
|
|
|
| |
llvm-svn: 83214
|
|
|
|
|
|
| |
ld / st pairs, etc.
llvm-svn: 83197
|
|
|
|
| |
llvm-svn: 83192
|
|
|
|
|
|
| |
This fixes most of the -ldstopti-before-sched2 regressions.
llvm-svn: 83191
|
|
|
|
|
|
| |
This will allow processDebugLoc() to handle scopes for DWARF debug info.
llvm-svn: 83183
|
|
|
|
|
|
|
| |
Add a new TargetLoweringObjectFileMachO::getConstTextCoalSection method to
get access to that section.
llvm-svn: 83178
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
to emit target-specific things at the beginning of the asm output. This
fixes a problem for PPC, where the text sections are not being kept together
as expected. The base class doInitialization code calls DW->BeginModule()
which emits a bunch of DWARF section directives. The PPC doInitialization
code then emits all the TEXT section directives, with the intention that they
will be kept together. But as I understand it, the Darwin assembler treats
the default TEXT section as a special case and moves it to the beginning of
the file, which means that all those DWARF sections are in the middle of
the text. With this change, the EmitStartOfAsmFile hook is called before
the DWARF section directives are emitted, so that all the PPC text section
directives come out right at the beginning of the file.
llvm-svn: 83176
|
|
|
|
| |
llvm-svn: 83174
|