| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
functionality change.
llvm-svn: 131012
|
| |
|
|
|
|
| |
Luis Felipe Strano Moraes!
llvm-svn: 129558
|
| |
|
|
|
|
| |
the type of the LHS.
llvm-svn: 126518
|
| |
|
|
|
|
|
|
|
|
|
| |
LiveIns."
In other words, do not keep track of argument's location. The debugger (gdb) is not prepared to see line table entries for arguments. For the debugger, "second" line table entry marks beginning of function body.
This requires some coordination with debugger to get this working.
- The debugger needs to be aware of prolog_end attribute attached with line table entries.
- The compiler needs to accurately mark prolog_end in line table entries (at -O0 and at -O1+)
llvm-svn: 126155
|
| |
|
|
| |
llvm-svn: 124611
|
| |
|
|
| |
llvm-svn: 123912
|
| |
|
|
| |
llvm-svn: 123707
|
| |
|
|
| |
llvm-svn: 123620
|
| |
|
|
|
|
| |
and fixes here and there.
llvm-svn: 123170
|
| |
|
|
|
|
|
| |
something that just glues two nodes together, even if it is
sometimes used for flags.
llvm-svn: 122310
|
| |
|
|
| |
llvm-svn: 120092
|
| |
|
|
|
|
| |
shifts.
llvm-svn: 120022
|
| |
|
|
| |
llvm-svn: 119990
|
| |
|
|
|
|
|
| |
In the attached testcase, the element was
never extracted (missing rotate).
llvm-svn: 119973
|
| |
|
|
|
|
| |
No functionality change.
llvm-svn: 119142
|
| |
|
|
|
|
|
|
|
|
|
|
| |
support for the case where alignment<value size.
These cases were silently miscompiled before this patch.
Now they are overly verbose -especially storing is- and
any front-end should still avoid misaligned memory
accesses as much as possible. The bit juggling algorithm
added here probably has some room for improvement still.
llvm-svn: 118889
|
| |
|
|
|
|
|
| |
with a SimpleValueType, while an EVT supports equality and
inequality comparisons with SimpleValueType.
llvm-svn: 118169
|
| |
|
|
|
|
| |
basic logic, added initial platform support.
llvm-svn: 117667
|
| |
|
|
|
|
|
|
| |
The old algorithm inserted a 'rotqmbyi' instruction which was
both redundant and wrong - it made shufb select bytes from the
wrong end of the input quad.
llvm-svn: 116701
|
| |
|
|
|
|
|
|
|
|
| |
Before the implementation of isLegalAddressingMode, some rare cases
of code were miscompiled if optimized with the LoopStrengthReduce pass.
It is unclear (to me) if LSR is "allowed" to produce wrong code with a
bad TargetLowering, or if the bug is elsewhere and this patch just
hides it.
llvm-svn: 115919
|
| |
|
|
| |
llvm-svn: 114461
|
| |
|
|
|
|
|
|
| |
"getFixedStack" on the MachinePointerInfo class. While
this isn't the problem I'm setting out to solve, it is the
right way to eliminate PseudoSourceValue, so lets go with it.
llvm-svn: 114406
|
| |
|
|
| |
llvm-svn: 113478
|
| |
|
|
|
|
| |
Some cases of lowering to rotate were miscompiled.
llvm-svn: 113355
|
| |
|
|
|
|
| |
The IDX was treated as byte index, not element index.
llvm-svn: 112422
|
| |
|
|
|
|
| |
llc used to assert on the added testcase.
llvm-svn: 111911
|
| |
|
|
|
|
| |
from 64bit vector support.
llvm-svn: 111910
|
| |
|
|
|
|
|
| |
The previous algorithm in LowerVECTOR_SHUFFLE
didn't check all requirements for "monotonic" shuffles.
llvm-svn: 111361
|
| |
|
|
|
|
|
|
| |
The "half vectors" are now widened to full size by the legalizer.
The only exception is in parameter passing, where half vectors are
expanded. This causes changes to some dejagnu tests.
llvm-svn: 111360
|
| |
|
|
| |
llvm-svn: 110576
|
| |
|
|
|
|
| |
store for "half vectors"
llvm-svn: 110198
|
| |
|
|
| |
llvm-svn: 110038
|
| |
|
|
|
|
|
|
| |
duplicate the instructions and operate on half vectors.
Also reorder code in SPUInstrInfo.td for better coherency.
llvm-svn: 110037
|
| |
|
|
|
|
|
|
|
|
| |
such registers in SPU, this support boils down to "emulating"
them by duplicating instructions on the general purpose registers.
This adds the most basic operations on v2i32: passing parameters,
addition, subtraction, multiplication and a few others.
llvm-svn: 110035
|
| |
|
|
|
|
| |
to a Tablegen implementation.
llvm-svn: 107913
|
| |
|
|
|
|
| |
code can do calling-convention queries. This obviates OutputArgReg.
llvm-svn: 107786
|
| |
|
|
| |
llvm-svn: 107710
|
| |
|
|
| |
llvm-svn: 107622
|
| |
|
|
|
|
| |
slots so it's always false.
llvm-svn: 107550
|
| |
|
|
|
|
|
|
|
| |
for an "i" constraint should get lowered; PR 6309. While
this argument was passed around a lot, this is the only
place it was used, so it goes away from a lot of other
places.
llvm-svn: 106893
|
| |
|
|
| |
llvm-svn: 106428
|
| |
|
|
| |
llvm-svn: 106419
|
| |
|
|
|
|
|
| |
used to choke llc with the attached test.
llvm-svn: 106411
|
| |
|
|
| |
llvm-svn: 106279
|
| |
|
|
|
|
| |
We default to inserting to lane 0.
llvm-svn: 105722
|
| |
|
|
|
|
| |
TargetMachine.h and put it in its own namespace.
llvm-svn: 104147
|
| |
|
|
|
|
| |
patch by Kalle Raiskila!
llvm-svn: 101875
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
const_casts, and it reinforces the design of the Target classes being
immutable.
SelectionDAGISel::IsLegalToFold is now a static member function, because
PIC16 uses it in an unconventional way. There is more room for API
cleanup here.
And PIC16's AsmPrinter no longer uses TargetLowering.
llvm-svn: 101635
|
| |
|
|
|
|
| |
MachineFunctionInfo subclasses.
llvm-svn: 101634
|
| |
|
|
| |
llvm-svn: 101334
|