| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 130755
|
| |
|
|
|
|
| |
Luis Felipe Strano Moraes!
llvm-svn: 129558
|
| |
|
|
|
|
|
|
|
|
|
| |
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: 126108
|
| |
|
|
|
|
| |
other getNode() methods. Radar 9002173.
llvm-svn: 125665
|
| |
|
|
| |
llvm-svn: 124611
|
| |
|
|
|
|
| |
backend. It makes the code generated more compliant with the sparc32 ABI.
llvm-svn: 124030
|
| |
|
|
|
|
|
| |
Rename FLUSH to FLUSHW.
Output "ta 3" instead of a "flushw" instruction if v8 instruction set is used.
llvm-svn: 123997
|
| |
|
|
| |
llvm-svn: 123974
|
| |
|
|
|
|
| |
CallingConv assignments.
llvm-svn: 123749
|
| |
|
|
| |
llvm-svn: 123310
|
| |
|
|
|
|
|
| |
are correctly marked as used instead of passing all possible argument registers
as used.
llvm-svn: 123301
|
| |
|
|
| |
llvm-svn: 122626
|
| |
|
|
|
|
|
|
| |
subxcc defs/uses;
and fixed CustomInserter.
llvm-svn: 122607
|
| |
|
|
|
|
|
| |
something that just glues two nodes together, even if it is
sometimes used for flags.
llvm-svn: 122310
|
| |
|
|
| |
llvm-svn: 119990
|
| |
|
|
|
|
|
|
|
|
| |
value type, so there is no point in passing it around using
an EVT. Use the simpler MVT everywhere. Rather than trying
to propagate this information maximally in all the code that
using the calling convention stuff, I chose to do a mainly
low impact change instead.
llvm-svn: 118167
|
| |
|
|
| |
llvm-svn: 114461
|
| |
|
|
|
|
| |
SelectionDAG::getExtLoad overload, and eliminate it.
llvm-svn: 114446
|
| |
|
|
| |
llvm-svn: 114410
|
| |
|
|
|
|
| |
for consistency sake.
llvm-svn: 107820
|
| |
|
|
|
|
| |
code can do calling-convention queries. This obviates OutputArgReg.
llvm-svn: 107786
|
| |
|
|
| |
llvm-svn: 107710
|
| |
|
|
|
|
|
| |
the block before calling the expansion hook. And don't
put EFLAGS in a mbb's live-in list twice.
llvm-svn: 107691
|
| |
|
|
| |
llvm-svn: 107668
|
| |
|
|
|
|
| |
the pseudo instruction is not at the end of the block.
llvm-svn: 107655
|
| |
|
|
|
|
| |
slots so it's always false.
llvm-svn: 107550
|
| |
|
|
| |
llvm-svn: 106279
|
| |
|
|
|
|
| |
changes before doing phi lowering for switches.
llvm-svn: 102809
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
| |
llvm-svn: 96288
|
| |
|
|
|
|
| |
change to SelectionDAG build APIs.
llvm-svn: 96237
|
| |
|
|
| |
llvm-svn: 95160
|
| |
|
|
|
|
| |
sibcall eligibility.
llvm-svn: 95130
|
| |
|
|
|
|
|
|
|
| |
Target independent isel should always pass along the "tail call" property. Change
target hook LowerCall's parameter "isTailCall" into a refernce. If the target
decides it's impossible to honor the tail call request, it should set isTailCall
to false to make target independent isel happy.
llvm-svn: 94626
|
| |
|
|
|
|
|
|
| |
Note that "hasDotLocAndDotFile"-style debug info was already broken;
people wanting this functionality should implement it in the
AsmPrinter/DwarfWriter code.
llvm-svn: 89711
|
| |
|
|
| |
llvm-svn: 89536
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
slots. The AsmPrinter will use this information to determine whether to
print a spill/reload comment.
Remove default argument values. It's too easy to pass a wrong argument
value when multiple arguments have default values. Make everything
explicit to trap bugs early.
Update all targets to adhere to the new interfaces..
llvm-svn: 87022
|
| |
|
|
|
|
| |
blocks and update CFG, it should also inform sdisel of the changes so the phi source operands will come from the right basic blocks.
llvm-svn: 82311
|
| |
|
|
|
|
|
|
| |
sdisel will use to properly complete phi nodes.
Not functionality change yet.
llvm-svn: 82273
|
| |
|
|
|
|
| |
and PIC codegen. Patch by Venkatraman Govindaraju!
llvm-svn: 81877
|
| |
|
|
| |
llvm-svn: 80773
|
| |
|
|
| |
llvm-svn: 79742
|
| |
|
|
|
|
|
|
| |
while
the latter is capable of representing either a primitive or an extended type.
llvm-svn: 78713
|
| |
|
|
|
|
| |
own struct type.
llvm-svn: 78610
|
| |
|
|
|
|
|
|
| |
A TAI hook is appropriate in this case because this is just an
asm syntax issue, not a semantic difference. TLOF should model
the semantics of the section.
llvm-svn: 78498
|
| |
|
|
| |
llvm-svn: 78363
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of awkwardly encoding calling-convention information with ISD::CALL,
ISD::FORMAL_ARGUMENTS, ISD::RET, and ISD::ARG_FLAGS nodes, TargetLowering
provides three virtual functions for targets to override:
LowerFormalArguments, LowerCall, and LowerRet, which replace the custom
lowering done on the special nodes. They provide the same information, but
in a more immediately usable format.
This also reworks much of the target-independent tail call logic. The
decision of whether or not to perform a tail call is now cleanly split
between target-independent portions, and the target dependent portion
in IsEligibleForTailCallOptimization.
This also synchronizes all in-tree targets, to help enable future
refactoring and feature work.
llvm-svn: 78142
|