- May 08, 2004
-
-
Alkis Evlogimenos authored
llvm-svn: 13416
-
Chris Lattner authored
%tmp.0 = getelementptr [50 x sbyte]* %ar, uint 0, int 5 ; <sbyte*> [#uses=2] %tmp.7 = getelementptr sbyte* %tmp.0, int 8 ; <sbyte*> [#uses=1] together. This patch actually allows us to simplify and generalize the code. llvm-svn: 13415
-
- May 07, 2004
-
-
Brian Gaeke authored
Disable the code that copies long constants to registers - it looks fishy. Implement some simple casts: integral, smaller than longs, and equal-width or narrowing only. llvm-svn: 13413
-
Chris Lattner authored
allows us to compile: store float 10.0, float* %P into: mov DWORD PTR [%EAX], 1092616192 instead of: .CPItest_0: # float 0x4024000000000000 .long 1092616192 # float 10 ... fld DWORD PTR [.CPItest_0] fstp DWORD PTR [%EAX] llvm-svn: 13409
-
Chris Lattner authored
against zero. In particular, don't emit: mov %ESI, 0 cmp %ECX, %ESI instead, emit: test %ECX, %ECX llvm-svn: 13407
-
Chris Lattner authored
llvm-svn: 13400
-
John Criswell authored
llvm-svn: 13391
-
Chris Lattner authored
llvm-svn: 13388
-
- May 06, 2004
-
-
John Criswell authored
When looking at getelementptr instructions, make sure to use a forwarded type. We want to do this because a DerivedType may drop its uses and then refine its users, who may then use another user who hasn't been refined yet. By getting the forwarded type, we always ensure that we're looking at a Type that isn't in a halfway refined state. Now, I should be able to put this stuff in PATypeHandle, but it doesn't work for some reason. This should do for now. llvm-svn: 13386
-
Chris Lattner authored
workaround, use the C HUGE_VAL macro instead. llvm-svn: 13377
-
- May 05, 2004
-
-
Brian Gaeke authored
the debugging functions that call "dot". These fixed settings have various problems: for example, the fixed size that is set in the graph traits classes is not appropriate for turning the dot file into a PNG, and if TrueType font rendering is being used, the 'Courier' TrueType font may not be installed. It seems easy enough to specify these things on the command line, anyhow. llvm-svn: 13366
-
Brian Gaeke authored
llvm-svn: 13364
-
- May 04, 2004
-
-
John Criswell authored
llvm-svn: 13363
-
Brian Gaeke authored
llvm-svn: 13362
-
Brian Gaeke authored
constant pool member's name. This is intended to address Bug 333. Also, fix an anachronistic usage of "M" as a parameter of type Function *. llvm-svn: 13357
-
Brian Gaeke authored
fills in a ToolArgs vector in the AbstractInterpreter if it is set. This ToolArgs vector is used to pass additional arguments to LLI and/or LLC. This is intended to address Bug 40. Also, make -debug-only=toolrunner work for the LLC and CBE AbstractInterpreters. llvm-svn: 13356
-
Chris Lattner authored
llvm-svn: 13355
-
Chris Lattner authored
div: mov %EDX, DWORD PTR [%ESP + 4] mov %ECX, 64 mov %EAX, %EDX sar %EDX, 31 idiv %ECX ret to this: div: mov %EAX, DWORD PTR [%ESP + 4] mov %ECX, %EAX sar %ECX, 5 shr %ECX, 26 mov %EDX, %EAX add %EDX, %ECX sar %EAX, 6 ret Note that the intel compiler is currently making this: div: movl 4(%esp), %edx #3.5 movl %edx, %eax #4.14 sarl $5, %eax #4.14 shrl $26, %eax #4.14 addl %edx, %eax #4.14 sarl $6, %eax #4.14 ret #4.14 Which has one less register->register copy. (hint hint alkis :) llvm-svn: 13354
-
Brian Gaeke authored
llvm-svn: 13352
-
Chris Lattner authored
This fixes PR332 and ADCE/2004-05-04-UnreachableBlock.llx llvm-svn: 13349
-
Brian Gaeke authored
llvm-svn: 13346
-
Chris Lattner authored
llvm-svn: 13342
-
Chris Lattner authored
llvm-svn: 13341
-
Brian Gaeke authored
llvm-svn: 13340
-
Brian Gaeke authored
which case you'll get a null array and zero passed to the profiling function. llvm-svn: 13336
-
Brian Gaeke authored
llvm-svn: 13335
-
- May 02, 2004
-
-
Chris Lattner authored
acting like a normal pass. :( llvm-svn: 13318
-
Chris Lattner authored
llvm-svn: 13317
-
Chris Lattner authored
llvm-svn: 13316
-
Chris Lattner authored
llvm-svn: 13315
-
Chris Lattner authored
llvm-svn: 13312
-
Chris Lattner authored
Turning "if (A < B && B < C)" into "if (A < B & B < C)" llvm-svn: 13311
-
Chris Lattner authored
missing opportunities for combination. llvm-svn: 13309
-
Chris Lattner authored
when replacing them, missing the opportunity to do simplifications llvm-svn: 13308
-
Chris Lattner authored
llvm-svn: 13307
-
Chris Lattner authored
llvm-svn: 13306
-
- May 01, 2004
-
-
Chris Lattner authored
llvm-svn: 13304
-
Chris Lattner authored
Look at all of the pretty minuses. :) llvm-svn: 13303
-
Chris Lattner authored
llvm-svn: 13302
-
Chris Lattner authored
use MachineBasicBlocks. To do this, we traverse the Machine CFG instead of the LLVM CFG, which is also *MUCH* more efficient by having fewer levels of indirections and mappings. llvm-svn: 13301
-