- Sep 01, 2005
-
-
Jim Laskey authored
is to manage processor specific attributes from the command line. See examples of use in llc/lli and PowerPCTargetSubtarget. llvm-svn: 23191
-
Chris Lattner authored
directly out of R1 (without using a CopyFromReg, which uses a chain), multiple allocas were getting CSE'd together, producing bogus code. For this: int %foo(bool %X, int %A, int %B) { br bool %X, label %T, label %F F: %G = alloca int %H = alloca int store int %A, int* %G store int %B, int* %H %R = load int* %G ret int %R T: ret int 0 } We were generating: _foo: stwu r1, -16(r1) stw r31, 4(r1) or r31, r1, r1 stw r1, 12(r31) cmpwi cr0, r3, 0 bne cr0, .LBB_foo_2 ; T .LBB_foo_1: ; F li r2, 16 subf r2, r2, r1 ;; One alloca or r1, r2, r2 or r3, r1, r1 or r1, r2, r2 or r2, r1, r1 stw r4, 0(r3) stw r5, 0(r2) lwz r3, 0(r3) lwz r1, 12(r31) lwz r31, 4(r31) lwz r1, 0(r1) blr .LBB_foo_2: ; T li r3, 0 lwz r1, 12(r31) lwz r31, 4(r31) lwz r1, 0(r1) blr Now we generate: _foo: stwu r1, -16(r1) stw r31, 4(r1) or r31, r1, r1 stw r1, 12(r31) cmpwi cr0, r3, 0 bne cr0, .LBB_foo_2 ; T .LBB_foo_1: ; F or r2, r1, r1 li r3, 16 subf r2, r3, r2 ;; Alloca 1 or r1, r2, r2 or r2, r1, r1 or r6, r1, r1 subf r3, r3, r6 ;; Alloca 2 or r1, r3, r3 or r3, r1, r1 stw r4, 0(r2) stw r5, 0(r3) lwz r3, 0(r2) lwz r1, 12(r31) lwz r31, 4(r31) lwz r1, 0(r1) blr .LBB_foo_2: ; T li r3, 0 lwz r1, 12(r31) lwz r31, 4(r31) lwz r1, 0(r1) blr This fixes Povray and SPASS with the dag isel, the last two failing cases. Tommorow we will hopefully turn it on by default! :) llvm-svn: 23190
-
Chris Lattner authored
could cause a miscompile. Fixing this didn't fix the two programs that fail though. :( This also changes the implementation to follow the pattern selector more closely, causing us to select 0 to li instead of lis. llvm-svn: 23189
-
Chris Lattner authored
and selecting early prevents folding immediates into the cmpw* instructions llvm-svn: 23188
-
- Aug 31, 2005
-
-
Chris Lattner authored
getting them out of the business of making stack slots. llvm-svn: 23180
-
Chris Lattner authored
llvm-svn: 23179
-
Chris Lattner authored
llvm-svn: 23178
-
Chris Lattner authored
llvm-svn: 23177
-
Chris Lattner authored
the ops to dag optimization. llvm-svn: 23176
-
Chris Lattner authored
llvm-svn: 23171
-
Chris Lattner authored
llvm-svn: 23170
-
Nate Begeman authored
llvm-svn: 23168
-
Chris Lattner authored
fixes crafty and probably others. llvm-svn: 23167
-
Chris Lattner authored
ugly hacks llvm-svn: 23162
-
- Aug 30, 2005
-
-
Chris Lattner authored
llvm-svn: 23159
-
Chris Lattner authored
Remove code (last hunk) that miscompiled immediate and's, such as and uint %tmp.30, 4294958079 into andi. r8, r8, 56319 andis. r8, r8, 65535 instead of: li r9, -9217 and r8, r8, r9 The first always generates zero. This fixes espresso. llvm-svn: 23155
-
Chris Lattner authored
fixes fourinarow llvm-svn: 23153
-
Chris Lattner authored
fixes fhourstones llvm-svn: 23152
-
Chris Lattner authored
llvm-svn: 23150
-
Chris Lattner authored
linking them to calls when appropriate, this prevents the scheduler from pulling these copies away from the call. This fixes Ptrdist/yacr2 llvm-svn: 23143
-
Chris Lattner authored
fixes MediaBench/toast with the dag selector llvm-svn: 23141
-
Chris Lattner authored
which I failed to include when I moved the code over. This fixes MallocBench/gs. llvm-svn: 23140
-
Chris Lattner authored
STOREs, know the right type to store. llvm-svn: 23139
-
Chris Lattner authored
no xcode, this is not right: if (!foo) break; X; llvm-svn: 23138
-
Chris Lattner authored
llvm-svn: 23137
-
Chris Lattner authored
llvm-svn: 23136
-
Chris Lattner authored
This fixes voronoi and bh in Olden, allowing all of olden to pass! llvm-svn: 23133
-
- Aug 29, 2005
-
-
Chris Lattner authored
llvm-svn: 23127
-
Chris Lattner authored
llvm-svn: 23126
-
Chris Lattner authored
Olden/msFix order of operands for copytoreg node when emitting calls. This fixes Olden/mstt. llvm-svn: 23125
-
Chris Lattner authored
llvm-svn: 23123
-
Chris Lattner authored
llvm-svn: 23121
-
Chris Lattner authored
llvm-svn: 23120
-
- Aug 27, 2005
-
-
Reid Spencer authored
llvm-svn: 23119
-
Reid Spencer authored
them more clearly. llvm-svn: 23118
-
Chris Lattner authored
This fixes: UnitTests/2005-07-17-INT-To-FP.c llvm-svn: 23112
-
Chris Lattner authored
llvm-svn: 23111
-
Chris Lattner authored
llvm-svn: 23107
-
Nate Begeman authored
llvm-svn: 23106
-
- Aug 26, 2005
-
-
Chris Lattner authored
llvm-svn: 23105
-