- May 27, 2010
-
-
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
-
Eric Christopher authored
and testcases accordingly. llvm-svn: 104635
-
Jakob Stoklund Olesen authored
llvm-svn: 104628
-
Dale Johannesen authored
Mon Ping provided; unfortunately bugpoint failed to reduce it, but I think it's important to have a test for this in the suite. 8023512. llvm-svn: 104624
-
Dale Johannesen authored
(oye, a word which should be better known to people writing tree traversals, means grandchild.) llvm-svn: 104619
-
Jakob Stoklund Olesen authored
llvm-svn: 104574
-
Bill Wendling authored
llvm-svn: 104572
-
- May 24, 2010
-
-
Evan Cheng authored
llvm-svn: 104560
-
Devang Patel authored
This fixes recent regression in store.exp from gdb testsuite. llvm-svn: 104524
-
Nicolas Geoffray authored
is first emitted, and StackOffsets are emitted in 16 bits. llvm-svn: 104488
-
- May 23, 2010
-
-
Daniel Dunbar authored
llvm-svn: 104463
-
- May 22, 2010
-
-
-
Jim Grosbach authored
Followups: docs patch for the builtin and eh.sjlj.setjmp cleanup to match longjmp. llvm-svn: 104419
-
Eric Christopher authored
llvm-svn: 104414
-
Devang Patel authored
llvm-svn: 104412
-
Bob Wilson authored
llvm-svn: 104410
-