| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
llvm-svn: 74771
|
|
|
|
| |
llvm-svn: 74770
|
|
|
|
| |
llvm-svn: 74769
|
|
|
|
|
|
|
|
| |
memory.
The change in the .td file is to mark the side effects of mov insn.
llvm-svn: 74768
|
|
|
|
|
|
|
|
| |
Don't spill to the CR save area when using the SVR4 ABI for now.
Don't rely on constants assigned for registers to be in order (they aren't assigned in order).
Make sure CR bits are mapped to the corresponding CR field.
llvm-svn: 74767
|
|
|
|
|
|
|
|
|
|
|
| |
Make CalculateParameterAndLinkageAreaSize() Darwin-specific.
Remove SVR4 specific code from LowerCALL_Darwin() and LowerFORMAL_ARGUMENTS_Darwin().
Rename MachoABI to DarwinABI for consistency.
Rename ELF ABI to SVR4 ABI for consistency.
Factor out common call return lowering between the Darwin and SVR4 ABI.
Factor out common call lowering between the Darwin and SVR4 ABI.
llvm-svn: 74766
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Implement LowerFORMAL_ARGUMENTS_SVR4().
Implement LowerCALL_SVR4().
Add support for split arguments.
Implement by value parameter passing for aggregates.
Add support for variable argument lists.
Create the spill area for argument registers of variable argument functions no longer at a fixed offset.
Make sure callee saved registers are spilled to the correct stack offsets.
Change allocation order of non-volatile floating-point registers.
Add VRSAVE to the list of callee-saved registers, add CallConvLowering for vararg calls.
Add support for variable argument calls with Vector arguments.
Add support for VR and VRSAVE save area, improve allocation order for non-volatile vector registers.
Stop creating illegal i8 values in LowerVASTART().
Add memory access width hints.
Make sure to reserve space on the stack for the frame pointer.
When using the SVR4 ABI, reserve r13 for the Small Data Area pointer.
Assure that the frame pointer is spilled to the correct location on the stack.
Some FP registers were not marked as volatile.
Make sure the i64 words from a long double are passed either both in registers or both on the stack.
Only put integer arguments in registers which are not marked with the inreg flag.
llvm-svn: 74765
|
|
|
|
|
|
|
|
|
|
|
| |
arguments in a vararg call.
With the SVR4 ABI on PowerPC, vector arguments for vararg calls are passed differently depending on whether they are a fixed or a variable argument. Variable vector arguments always go into memory, fixed vector arguments are put
into vector registers. If there are no free vector registers available, fixed vector arguments are put on the stack.
The NumFixedArgs attribute allows to decide for an argument in a vararg call whether it belongs to the fixed or variable portion of the parameter list.
llvm-svn: 74764
|
|
|
|
|
|
|
|
|
|
| |
Small refactoring in LowerFORMAL_ARGUMENTS().
Correct minor formatting issues.
Remove size argument of CreateCopyOfByValArgument().
Remove dead argument from CalculateStackSlotSize().
Remove unused variable ReturnAddrIndex from various targets.
llvm-svn: 74763
|
|
|
|
| |
llvm-svn: 74762
|
|
|
|
| |
llvm-svn: 74761
|
|
|
|
| |
llvm-svn: 74760
|
|
|
|
|
|
|
| |
Controls whether libCompilerDriver should be loaded dynamically. By default this
is needed only on Win32, to make dynamic plugins work.
llvm-svn: 74759
|
|
|
|
| |
llvm-svn: 74758
|
|
|
|
| |
llvm-svn: 74757
|
|
|
|
|
|
|
|
|
| |
actually happening. Fix mod implementation so it doesn't get
optimized to a recursive call. Make x86-32 non-SSE2 shift
implementation use shld/shrd instead of emulating it (the only x86 processor
where the emulation might be remotely close to justifiable is the Pentium 4).
llvm-svn: 74756
|
|
|
|
| |
llvm-svn: 74755
|
|
|
|
| |
llvm-svn: 74754
|
|
|
|
| |
llvm-svn: 74753
|
|
|
|
|
|
|
| |
to deal with for AST pretty-printing/rewriting. Patch by Abramo
Bagnara.
llvm-svn: 74752
|
|
|
|
| |
llvm-svn: 74751
|
|
|
|
|
|
| |
variable can be symbolicated.
llvm-svn: 74750
|
|
|
|
| |
llvm-svn: 74749
|
|
|
|
| |
llvm-svn: 74748
|
|
|
|
|
|
|
| |
block would get hooked up in some cases when processing empty compound
statements.
llvm-svn: 74743
|
|
|
|
|
|
|
|
| |
- Sorry, I can't help myself.
- No intended functionality change.
llvm-svn: 74742
|
|
|
|
| |
llvm-svn: 74741
|
|
|
|
| |
llvm-svn: 74740
|
|
|
|
| |
llvm-svn: 74739
|
|
|
|
|
|
| |
the subprocess module.
llvm-svn: 74738
|
|
|
|
| |
llvm-svn: 74737
|
|
|
|
| |
llvm-svn: 74736
|
|
|
|
| |
llvm-svn: 74735
|
|
|
|
| |
llvm-svn: 74734
|
|
|
|
| |
llvm-svn: 74733
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
it to print them. This gives us column numbers in the diag line. Before:
t.s:4: error: unexpected token in argument list
mov %eax %edx
^
now:
t.s:4:11: error: unexpected token in argument list
mov %eax %edx
^
llvm-svn: 74732
|
|
|
|
|
|
| |
Thumb1InstrInfo, Thumb2InstrInfo, Thumb1RegisterInfo and Thumb2RegisterInfo. Move methods from ARMInstrInfo to ARMBaseInstrInfo to prepare for sharing with Thumb2.
llvm-svn: 74731
|
|
|
|
|
|
|
|
|
| |
ValueManager::getRegionValueSymbolVal() with unguarded calls to
ValueManager::getRegionValueSymbolValOrUnknown(). This changes centralizes the
decision of what values to symbolicate in SymbolManager rather than having it
scatter in RegionStoreManager.
llvm-svn: 74730
|
|
|
|
|
|
| |
structures passed-by-value as function arguments.
llvm-svn: 74729
|
|
|
|
| |
llvm-svn: 74728
|
|
|
|
| |
llvm-svn: 74727
|
|
|
|
| |
llvm-svn: 74726
|
|
|
|
| |
llvm-svn: 74725
|
|
|
|
| |
llvm-svn: 74724
|
|
|
|
| |
llvm-svn: 74720
|
|
|
|
| |
llvm-svn: 74719
|
|
|
|
| |
llvm-svn: 74718
|
|
|
|
|
|
| |
using ASTContxt allocation.
llvm-svn: 74717
|
|
|
|
|
|
|
| |
directly consulting if a VarDecl is an implicit or actual parameter, a global,
etc.
llvm-svn: 74716
|
|
|
|
|
|
|
| |
This will simplify the logic of StoreManagers that want to specially reason
about the values of parameters.
llvm-svn: 74715
|