- Nov 04, 2008
-
-
Bill Wendling authored
* The prologue is modified to read the __stack_chk_guard global and insert it onto the stack. * The epilogue is modified to read the stored guard from the stack and compare it to the original __stack_chk_guard value. If they differ, then the __stack_chk_fail() function is called. * The stack protector needs to be first on the stack (after the parameters) to catch any stack-smashing activities. Front-end support will follow after a round of beta testing. llvm-svn: 58673
-
- Oct 25, 2008
-
-
Dan Gohman authored
target-independent code to target-specific code. This prevents it from running on targets that aren't using fast-isel. In addition to saving compile time, this addresses the problem that not all targets are prepared for it. In order to use this pass, all instructions must declare all their fixed uses and defs of physical registers. llvm-svn: 58144
-
- Oct 22, 2008
-
-
Daniel Dunbar authored
llvm-svn: 57946
-
Daniel Dunbar authored
createPrintModulePass and createPrintFunctionPass. - So clients who compile w/o RTTI can use them. llvm-svn: 57933
-
- Oct 08, 2008
-
-
Dan Gohman authored
instead. So now: -fast-isel or -fast-isel=true enable fast-isel, and -fast-isel=false disables it. Fast-isel is also on by default with -fast, and off by default otherwise. llvm-svn: 57270
-
- Oct 02, 2008
-
-
Devang Patel authored
llvm-svn: 56937
-
- Oct 01, 2008
-
-
Dan Gohman authored
llvm-svn: 56930
-
- Sep 25, 2008
-
-
Dan Gohman authored
llvm-svn: 56604
-
Dan Gohman authored
a separate function, eliminating duplication between the add-passes-for-file and add-passes-for-machine-code code. llvm-svn: 56599
-
- Aug 21, 2008
-
-
Owen Anderson authored
llvm-svn: 55092
-
- Aug 17, 2008
-
-
Gordon Henriksen authored
In particular, Collector was confusing to implementors. Several thought that this compile-time class was the place to implement their runtime GC heap. Of course, it doesn't even exist at runtime. Specifically, the renames are: Collector -> GCStrategy CollectorMetadata -> GCFunctionInfo CollectorModuleMetadata -> GCModuleInfo CollectorRegistry -> GCRegistry Function::getCollector -> getGC (setGC, hasGC, clearGC) Several accessors and nested types have also been renamed to be consistent. These changes should be obvious. llvm-svn: 54899
-
Gordon Henriksen authored
Factor GC metadata table assembly generation out of Collector in preparation for splitting AsmPrinter into its own library. llvm-svn: 54881
-
- Jul 01, 2008
-
-
Evan Cheng authored
llvm-svn: 52933
-
- Jun 06, 2008
-
-
Evan Cheng authored
llvm-svn: 52057
-
- Jun 04, 2008
-
-
Evan Cheng authored
llvm-svn: 51953
-
Evan Cheng authored
llvm-svn: 51934
-
- Jun 03, 2008
-
-
Evan Cheng authored
llvm-svn: 51898
-
- May 31, 2008
-
-
Evan Cheng authored
llvm-svn: 51793
-
- Apr 23, 2008
-
-
Anton Korobeynikov authored
llvm-svn: 50173
-
Anton Korobeynikov authored
llvm-svn: 50165
-
- Apr 02, 2008
-
-
Dale Johannesen authored
review feedback. -enable-eh is still accepted but doesn't do anything. EH intrinsics use Dwarf EH if the target supports that, and are handled by LowerInvoke otherwise. The separation of the EH table and frame move data is, I think, logically figured out, but either one still causes full EH info to be generated (not sure how to split the metadata correctly). MachineModuleInfo::needsFrameInfo is no longer used and is removed. llvm-svn: 49064
-
- Apr 01, 2008
-
-
Dale Johannesen authored
llvm-svn: 49046
-
Dale Johannesen authored
not marked nounwind, or for all functions when -enable-eh is set, provided the target supports Dwarf EH. llvm-gcc generates nounwind in the right places; other FEs will need to do so also. Given such a FE, -enable-eh should no longer be needed. llvm-svn: 49006
-
- Mar 25, 2008
-
-
Dan Gohman authored
llvm-svn: 48797
-
Devang Patel authored
llvm-svn: 48794
-
- Mar 11, 2008
-
-
Dan Gohman authored
that merely add passes. This allows them to be used with either FunctionPassManager or PassManager, or even with a custom new kind of pass manager. llvm-svn: 48256
-
- Feb 29, 2008
-
-
Evan Cheng authored
llvm-svn: 47736
-
- Feb 13, 2008
-
-
Nicolas Geoffray authored
llvm-svn: 47079
-
- Jan 14, 2008
-
-
Chris Lattner authored
llvm-svn: 45972
-
- Jan 07, 2008
-
-
Gordon Henriksen authored
llvm-svn: 45671
-
- Jan 05, 2008
-
-
Chris Lattner authored
llvm-svn: 45624
-
- Jan 04, 2008
-
-
Bill Wendling authored
llvm-svn: 45572
-
Chris Lattner authored
It is missing validity checks, so it is known broken. However, it is powerful enough to compile this contrived code: void test1(int C, double A, double B, double *P) { double Tmp = A*A+B*B; *P = C ? Tmp : A; } into: _test1: movsd 8(%esp), %xmm0 cmpl $0, 4(%esp) je LBB1_2 # entry LBB1_1: # entry movsd 16(%esp), %xmm1 mulsd %xmm1, %xmm1 mulsd %xmm0, %xmm0 addsd %xmm1, %xmm0 LBB1_2: # entry movl 24(%esp), %eax movsd %xmm0, (%eax) ret instead of: _test1: movsd 16(%esp), %xmm0 mulsd %xmm0, %xmm0 movsd 8(%esp), %xmm1 movapd %xmm1, %xmm2 mulsd %xmm2, %xmm2 addsd %xmm0, %xmm2 cmpl $0, 4(%esp) je LBB1_2 # entry LBB1_1: # entry movapd %xmm2, %xmm1 LBB1_2: # entry movl 24(%esp), %eax movsd %xmm1, (%eax) ret woo. llvm-svn: 45570
-
- Dec 29, 2007
-
-
Chris Lattner authored
llvm-svn: 45418
-
- Dec 07, 2007
-
-
Bill Wendling authored
_foo: li r2, 0 LBB1_1: ; bb li r5, 0 stw r5, 0(r3) addi r2, r2, 1 addi r3, r3, 4 cmplw cr0, r2, r4 bne cr0, LBB1_1 ; bb LBB1_2: ; return blr to: _foo: li r2, 0 li r5, 0 LBB1_1: ; bb stw r5, 0(r3) addi r2, r2, 1 addi r3, r3, 4 cmplw cr0, r2, r4 bne cr0, LBB1_1 ; bb LBB1_2: ; return blr ZOMG!! :-) Moar to come... llvm-svn: 44687
-
- Jul 27, 2007
-
-
Christopher Lamb authored
llvm-svn: 40548
-
- Jul 26, 2007
-
-
Christopher Lamb authored
Add a MachineFunction pass, which runs post register allocation, that turns subreg insert/extract instruction into register copies. This ensures correct code gen if the coalescer isn't able to remove all subreg instructions. llvm-svn: 40521
-
- Jul 20, 2007
-
-
Evan Cheng authored
llvm-svn: 40123
-
- Jul 13, 2007
-
-
Dale Johannesen authored
llvm-svn: 39817
-
Dale Johannesen authored
Change name of -sched option and DEBUG_TYPE to pre-RA-sched; adjust testcases. llvm-svn: 39816
-