- Jun 13, 2011
-
-
Benjamin Kramer authored
The backend already knew this trick. llvm-svn: 132915
-
- Jun 12, 2011
-
-
Rafael Espindola authored
we try to branch to them. Before we were creating successor lists with duplicated entries. Fixing that found a bug in isBlockOnlyReachableByFallthrough that would causes it to return the wrong answer for ----------- ... jne foo jmp bar foo: ---------- llvm-svn: 132882
-
Charles Davis authored
functionality change. Later on, we'll use the flag to emit SEH pseudo-ops that describe how the call frame was built. llvm-svn: 132880
-
- Jun 11, 2011
-
-
Eli Friedman authored
memcpy/memset symbol doesn't get marked up correctly in PIC modes otherwise. Should fix llvm-x86_64-linux-checks buildbot. Followup to r132864. llvm-svn: 132869
-
Eli Friedman authored
rdar://9431466 llvm-svn: 132864
-
- Jun 10, 2011
-
-
Cameron Zwarich authored
CallOrPrologue correctly and eliminate the existing setter. llvm-svn: 132856
-
Eli Friedman authored
PR10092 (second try): Don't crash on a load without a momoperand; fast-isel creates loads like this. llvm-svn: 132826
-
Eli Friedman authored
Chris fixed this README a while back by changing how clang generates code for structs like the given struct. llvm-svn: 132815
-
Cameron Zwarich authored
causing an assertion failure downstream. This fixes <rdar://problem/9562908>. This really seems like it should always be set at CCState creation time, so mistakes like this can never happen. I'll take a look at doing that. llvm-svn: 132811
-
- Jun 09, 2011
-
-
Roman Divacky authored
VK_PPC_{HA,LO}16 into darwin and gas variants. Darwin wants {ha,lo}16(symbol) while gnu as wants symbol@{ha,l}. llvm-svn: 132802
-
Eli Friedman authored
llvm-svn: 132795
-
Eli Friedman authored
Add a check to make sure we don't crash with strange configurations where we do fast-isel, then try to fold instructions. PR10092. llvm-svn: 132789
-
Jakob Stoklund Olesen authored
The register allocators automatically filter out reserved registers and place the callee saved registers last in the allocation order, so custom methods are no longer necessary just for that. Some targets still use custom allocation orders: ARM/Thumb: The high registers are removed from GPR in thumb mode. The NEON allocation orders prefer to use non-VFP2 registers first. X86: The GR8 classes omit AH-DH in x86-64 mode to avoid REX trouble. SystemZ: Some of the allocation orders are omitting R12 aliases without explanation. I don't understand this target well enough to fix that. It looks like all the boilerplate could be removed by reserving the right registers. llvm-svn: 132781
-
Eric Christopher authored
llvm-svn: 132777
-
Duncan Sands authored
Patch by Pekka Jaaskelainen. llvm-svn: 132774
-
Akira Hatanaka authored
llvm-svn: 132768
-
Eric Christopher authored
No functional change. Part of PR6965 llvm-svn: 132763
-
- Jun 08, 2011
-
-
Akira Hatanaka authored
dynamically allocated stack area was not set. llvm-svn: 132758
-
Akira Hatanaka authored
llvm-svn: 132756
-
- Jun 07, 2011
-
-
Akira Hatanaka authored
llvm-svn: 132726
-
Akira Hatanaka authored
llvm-svn: 132725
-
Akira Hatanaka authored
- Fix indentation. - Move comments. - Fit lines in 80 columns. - Remove dead code. llvm-svn: 132724
-
Akira Hatanaka authored
llvm-svn: 132718
-
Akira Hatanaka authored
llvm-svn: 132717
-
Akira Hatanaka authored
Add test case for C++ exception handling and fix the following mistakes in MipsFrameLowering::emitPrologue: - cfi directives are not inserted at the right location or in the right order. - The source MachineLocation for the cfi directive that changes the cfa register to $fp should be MachineLocation::VirtualFP. - A PROLOG_LABEL that marks the beginning of cfi_offset directives for callee-saved register is emitted even when no callee-saved registers are saved. - When a callee-saved double precision register is saved, two cfi_offset directives, one for each of the paired single precision registers, should be emitted. llvm-svn: 132703
-
Andrew Trick authored
rdar://problem/9556069 llvm-svn: 132699
-
Stuart Hastings authored
load. rdar://problem/6373334 llvm-svn: 132696
-
- Jun 04, 2011
-
-
Stuart Hastings authored
rdar://problem/5993888 llvm-svn: 132606
-
Jakob Stoklund Olesen authored
Materializing the stack pointer update before a call requires a scratch register that may not be available. llvm-svn: 132601
-
- Jun 03, 2011
-
-
Eric Christopher authored
addressing mode problem mentioned in r132559. Backend part of rdar://9037836 and part of rdar://9119939 llvm-svn: 132561
-
Roman Divacky authored
- Check for MTCTR8 in addition to MTCTR when looking up a hazard. - When lowering an indirect call use CTR8 when targeting 64bit. - Introduce BCTR8 that uses CTR8 and use it on 64bit when expanding ISD::BRIND. The last change fixes PR8487. With those changes, we are able to compile a running "ls" and "sh" on FreeBSD/PowerPC64. llvm-svn: 132552
-
Eli Friedman authored
Add ARM fast-isel support for materializing the address of a global in cases where the global uses an indirect symbol. rdar://9431157 llvm-svn: 132522
-
Eric Christopher authored
Part of rdar://9119939 llvm-svn: 132510
-
Jakob Stoklund Olesen authored
allocation orders. llvm-svn: 132509
-
Jakob Stoklund Olesen authored
Some register classes are only used for instruction operand constraints. They should never be used for virtual registers. Previously, those register classes were given an empty allocation order, but now you can say 'let isAllocatable=0' in the register class definition. TableGen calculates if a register is part of any allocatable register class, and makes that information available in TargetRegisterDesc::inAllocatableClass. The goal here is to eliminate use cases for overriding allocation_order_* methods. llvm-svn: 132508
-
- Jun 02, 2011
-
-
Tanya Lattner authored
llvm-svn: 132486
-
Rafael Espindola authored
llvm-svn: 132479
-
Stuart Hastings authored
rdar://problem/6373334 llvm-svn: 132458
-
Jakob Stoklund Olesen authored
No functional change. llvm-svn: 132455
-
Rafael Espindola authored
llvm-svn: 132451
-