- Apr 11, 2008
-
-
Gabor Greif authored
llvm-svn: 49524
-
Evan Cheng authored
llvm-svn: 49513
-
Evan Cheng authored
llvm-svn: 49512
-
- Apr 10, 2008
-
-
Evan Cheng authored
llvm-svn: 49491
-
Evan Cheng authored
llvm-svn: 49469
-
Evan Cheng authored
Teach branch folding pass about implicit_def instructions. Unfortunately we can't just eliminate them since register scavenger expects every register use to be defined. However, we can delete them when there are no intra-block uses. Carefully removing some implicit def's which enable more blocks to be optimized away. llvm-svn: 49461
-
- Apr 09, 2008
-
-
Evan Cheng authored
- Added insert_subreg coalescing support. llvm-svn: 49448
-
Evan Cheng authored
llvm-svn: 49415
-
- Apr 08, 2008
-
-
Dale Johannesen authored
Corresponds to -fno-unwind-tables (usually default in gcc). llvm-svn: 49361
-
- Apr 07, 2008
-
-
Dan Gohman authored
review feedback from Chris quite a while ago. No functionality change. llvm-svn: 49348
-
Roman Levenstein authored
by Dan Gohman is fixed. llvm-svn: 49330
-
- Apr 06, 2008
-
-
Chris Lattner authored
llvm-svn: 49284
-
Torok Edwin authored
If it cannot be expanded, it will keep the old behaviour and try to shrink the constant. Part of enhancement for PR2191. llvm-svn: 49280
-
Gabor Greif authored
Specifically, introduction of XXX::Create methods for Users that have a potentially variable number of Uses. llvm-svn: 49277
-
- Apr 05, 2008
-
-
Evan Cheng authored
2. Coalescer can now create an interesting situation where a register def can reaches itself without being killed. llvm-svn: 49246
-
Dale Johannesen authored
before an invoke. Failure to do this causes references in the landing pad to variables that were not set. Fixes g++.dg/eh/delayslot1.C g++.dg/eh/fp-regs.C g++.old-deja/g++.brendan/eh1.C llvm-svn: 49243
-
- Apr 04, 2008
-
-
Evan Cheng authored
llvm-svn: 49198
-
Evan Cheng authored
llvm-svn: 49197
-
- Apr 03, 2008
-
-
Andrew Lenharth authored
if some functions don't have debug info, we were outputing the same label at the start of each of those functions. This makes assemblers unhappy llvm-svn: 49176
-
Evan Cheng authored
- Be smarter about coalescing copies from implicit_def. llvm-svn: 49168
-
Evan Cheng authored
llvm-svn: 49167
-
Evan Cheng authored
- Eliminate an implicit_def when it's being spilled. llvm-svn: 49166
-
Evan Cheng authored
- Be (slightly) smarter about where to place the copies. llvm-svn: 49165
-
Evan Cheng authored
There is no point in creating a long live range defined by an implicit_def. Scheduler now duplicates implicit_def instruction for each of its uses. Therefore, if an implicit_def node has multiple uses, it will become a number of very short live ranges, rather than a long one. This will make coalescer's job easier. llvm-svn: 49164
-
Evan Cheng authored
llvm-svn: 49124
-
- Apr 02, 2008
-
-
Dale Johannesen authored
StripSymbols when EH is on. llvm-svn: 49110
-
Evan Cheng authored
Now that I am told MachineRegisterInfo also tracks physical register uses / defs, I can do away with the horribleness I introduced a while back. It's impossible to detect if there is any use of a physical register below an instruction (and before any def of the register) with some cheap book keeping. llvm-svn: 49105
-
Evan Cheng authored
llvm-svn: 49099
-
Dale Johannesen authored
llvm-svn: 49096
-
Owen Anderson authored
node and its inputs. llvm-svn: 49070
-
Owen Anderson authored
unknown defining inst after PHI elimination. llvm-svn: 49069
-
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
-
-
Evan Cheng authored
llvm-svn: 49053
-
Dale Johannesen authored
llvm-svn: 49046
-
Owen Anderson authored
llvm-svn: 49043
-
Evan Cheng authored
llvm-svn: 49016
-
Evan Cheng authored
llvm-svn: 49014
-
Evan Cheng authored
llvm-svn: 49013
-
Evan Cheng authored
llvm-svn: 49012
-
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
-