- May 30, 2010
-
-
Oscar Fuentes authored
llvm-svn: 105168
-
- May 29, 2010
-
-
Dan Gohman authored
llvm-svn: 105105
-
Dan Gohman authored
shouldn't have a TargetLoweringInfo member. And FunctionLoweringInfo::set doesn't needs its EnableFastISel argument. llvm-svn: 105101
-
Benjamin Kramer authored
llvm-svn: 105100
-
Evan Cheng authored
llvm-svn: 105095
-
Jakob Stoklund Olesen authored
llvm-svn: 105066
-
-
Evan Cheng authored
llvm-svn: 105061
-
- May 28, 2010
-
-
Jakob Stoklund Olesen authored
implementation that is correct for most targets. Tablegen will override where needed. Add MachineOperand::subst{Virt,Phys}Reg methods that correctly handle existing subreg indices when sustituting registers. llvm-svn: 104985
-
Stuart Hastings authored
llvm-svn: 104953
-
Dan Gohman authored
This will help reduce the amount of casting required on 64-bit targets. llvm-svn: 104911
-
Jakob Stoklund Olesen authored
optimization level. This only really affects llc for now because both the llvm-gcc and clang front ends override the default register allocator. I intend to remove that code later. llvm-svn: 104904
-
Jim Grosbach authored
an alloca() or an llvm.stackrestore(). rdar://8031573 llvm-svn: 104900
-
Jim Grosbach authored
llvm-svn: 104897
-
- May 27, 2010
-
-
Devang Patel authored
llvm-svn: 104884
-
Jim Grosbach authored
llvm-svn: 104869
-
Devang Patel authored
inlined function's arguments need a label to mark the start point because they are not directly attached to current function. llvm-svn: 104848
-
Stuart Hastings authored
llvm-svn: 104841
-
Devang Patel authored
llvm-svn: 104785
-
- May 26, 2010
-
-
Bill Wendling authored
llvm-svn: 104749
-
Daniel Dunbar authored
-filetype=obj. llvm-svn: 104747
-
Devang Patel authored
There is no need to force an line number entry (using previous location) for a temp label at unknown location. llvm-svn: 104740
-
Bill Wendling authored
usual suspects that could "return twice". llvm-svn: 104737
-
Jim Grosbach authored
ISD::. No functional change. llvm-svn: 104734
-
Devang Patel authored
llvm-svn: 104732
-
Bill Wendling authored
more than just the stack slot coloring algorithm. llvm-svn: 104722
-
Devang Patel authored
Identify instructions, that needs a label to mark debug info entity, in advance. This simplifies beginScope(). llvm-svn: 104720
-
Dan Gohman authored
implementing pop with a linear search for a "best" element. The priority queue was a neat idea, but in practice the comparison functions depend on dynamic information. llvm-svn: 104718
-
Dan Gohman authored
llvm-svn: 104716
-
Devang Patel authored
llvm-svn: 104706
-
Devang Patel authored
llvm-svn: 104705
-
Eric Christopher authored
llvm-svn: 104664
-
Dan Gohman authored
base class, since all the implementations are the same. llvm-svn: 104659
-
Dan Gohman authored
llvm-svn: 104657
-
Bill Wendling authored
machine code generation. That's a good idea, so I made it so. llvm-svn: 104655
-
Devang Patel authored
This is used to track variable information. llvm-svn: 104649
-
Bill Wendling authored
llvm-svn: 104646
-
- May 25, 2010
-
-
Dan Gohman authored
llvm-svn: 104645
-
Eric Christopher authored
as well. llvm-svn: 104642
-
Bill Wendling authored
If you have a setjmp/longjmp situation, it's possible for stack slot coloring to reuse a stack slot before it's really dead. For instance, if we have something like this: 1: y = g; x = sigsetjmp(env, 0); switch (x) { case 1: /* ... */ goto run; case 0: run: do_run(); /* marked as "no return" */ break; case 3: if (...) { /* ... */ goto run; } /* ... */ break; } 2: g = y; "y" may be put onto the stack, so the expression "g = y" is relying upon the fact that the stack slot containing "y" isn't modified between (1) and (2). But it can be, because of the "no return" calls in there. A longjmp might come back with 3, modify the stack slot, and then go to case 0. And it's perfectly acceptable to reuse the stack slot there because there's no CFG flow from case 3 to (2). The fix is to disable certain optimizations in these situations. Ideally, we'd disable them for all "returns twice" functions. But we don't support that attribute. Check for "setjmp" and "sigsetjmp" instead. llvm-svn: 104640
-