Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Avoid cast<>, use light weith wrapper directly. | Devang Patel | 2009-01-12 | 1 | -3/+3 |
| | | | | llvm-svn: 62115 | ||||
* | Use SrcLineInfo from DwarfWriter. The MachineModuleInfo copy will disappear ↵ | Devang Patel | 2009-01-12 | 1 | -12/+9 |
| | | | | | | soon. llvm-svn: 62114 | ||||
* | Rename getABITypeSize to getTypePaddedSize, as | Duncan Sands | 2009-01-12 | 10 | -32/+33 |
| | | | | | | suggested by Chris. llvm-svn: 62099 | ||||
* | Add DwarfWriter interface to mainipulate source location info. | Devang Patel | 2009-01-12 | 1 | -45/+91 |
| | | | | | | ( May be this info should be directly handled by the dwarf writer ? ) llvm-svn: 62096 | ||||
* | Clear debug info at the end of function processing. | Devang Patel | 2009-01-12 | 1 | -1/+12 |
| | | | | llvm-svn: 62092 | ||||
* | There is no need to maintain separate labelid list in the dwarf writer. It ↵ | Devang Patel | 2009-01-12 | 1 | -36/+5 |
| | | | | | | is not a good idea. llvm-svn: 62090 | ||||
* | Fix PR3241: Currently EmitCopyFromReg emits a copy from the physical ↵ | Evan Cheng | 2009-01-12 | 5 | -65/+87 |
| | | | | | | | | register to a virtual register unless it requires an expensive cross class copy. That means we are only treating "expensive to copy" register dependency as physical register dependency. Also future proof the scheduler to handle "normal" physical register dependencies. The code is not exercised yet. llvm-svn: 62074 | ||||
* | More two-address fixes. This gets lua working with join-creation enabled. | Owen Anderson | 2009-01-12 | 1 | -6/+10 |
| | | | | llvm-svn: 62073 | ||||
* | CheckForPhysRegDependency should not return copy cost. It's not used. No ↵ | Evan Cheng | 2009-01-11 | 1 | -9/+4 |
| | | | | | | functionality change. llvm-svn: 62036 | ||||
* | Reduce initial small vector sizes. | Devang Patel | 2009-01-10 | 1 | -6/+6 |
| | | | | llvm-svn: 62023 | ||||
* | Fix thinko. Create parent scope if parent descriptor is *not* null. | Devang Patel | 2009-01-10 | 1 | -2/+2 |
| | | | | llvm-svn: 62022 | ||||
* | Duplicated node may produce a non-physical register def. | Evan Cheng | 2009-01-09 | 1 | -3/+5 |
| | | | | llvm-svn: 62015 | ||||
* | Minor debug output tweak. | Evan Cheng | 2009-01-09 | 1 | -2/+2 |
| | | | | llvm-svn: 62005 | ||||
* | Request DwarfWriter. This will be used to handle dbg_* intrinsics. | Devang Patel | 2009-01-09 | 2 | -2/+7 |
| | | | | llvm-svn: 61999 | ||||
* | Removed trailing whitespace from Makefiles. | Misha Brukman | 2009-01-09 | 3 | -6/+6 |
| | | | | llvm-svn: 61991 | ||||
* | Convert DwarfWriter into a pass. | Devang Patel | 2009-01-08 | 1 | -12/+13 |
| | | | | | | Now Users request DwarfWriter through getAnalysisUsage() instead of creating an instance of DwarfWriter object directly. llvm-svn: 61955 | ||||
* | Delete unnecessary parens around return values. | Dan Gohman | 2009-01-08 | 2 | -2/+2 |
| | | | | llvm-svn: 61950 | ||||
* | Add DebugInfo based APIs to record source line info. | Devang Patel | 2009-01-08 | 1 | -4/+43 |
| | | | | llvm-svn: 61928 | ||||
* | * Moved author attribution to CREDITS.TXT | Misha Brukman | 2009-01-08 | 1 | -4/+1 |
| | | | | | | * Removed trailing whitespace llvm-svn: 61927 | ||||
* | * Alphabetized #includes | Misha Brukman | 2009-01-08 | 1 | -56/+56 |
| | | | | | | * Removed trailing whitespace llvm-svn: 61926 | ||||
* | Add APIs to record regions and variables. | Devang Patel | 2009-01-08 | 1 | -0/+27 |
| | | | | | | Again, shamelessly copied from MMI. llvm-svn: 61912 | ||||
* | Add APIs to manage scope using DebugInfo interface. | Devang Patel | 2009-01-08 | 1 | -0/+297 |
| | | | | | | This is a shameless copy of similar APIs from MachineModuleInfo. The copy from MMI will be deleted in near future. llvm-svn: 61908 | ||||
* | Remove redundant 'else's. No functionality change. | Dan Gohman | 2009-01-07 | 1 | -7/+6 |
| | | | | llvm-svn: 61891 | ||||
* | The coalescer does not coalesce a virtual register to a physical register if ↵ | Evan Cheng | 2009-01-07 | 2 | -20/+84 |
| | | | | | | | | | | | | | | any of the physical register's sub-register live intervals overlaps with the virtual register. This is overly conservative. It prevents a extract_subreg from being coalesced away: v1024 = EDI // not killed = = EDI One possible solution is for the coalescer to examine the sub-register live intervals in the same manner as the physical register. Another possibility is to examine defs and uses (when needed) of sub-registers. Both solutions are too expensive. For now, look for "short virtual intervals" and scan instructions to look for conflict instead. This is a small win on x86-64. e.g. It shaves 403.gcc by ~80 instructions. llvm-svn: 61847 | ||||
* | Fix a bug in ComputeLinearIndex computation handling multi-level | Dan Gohman | 2009-01-06 | 1 | -1/+3 |
| | | | | | | | | aggregate types. Don't increment the current index after reaching the end of a struct, as it will already be pointing at one-past-the end. This fixes PR3288. llvm-svn: 61828 | ||||
* | Set up DwarfDebug using DebugInfo API. | Devang Patel | 2009-01-06 | 1 | -0/+33 |
| | | | | llvm-svn: 61822 | ||||
* | Forgot that this was needed for Linux. This should fix the builds. | Bill Wendling | 2009-01-06 | 1 | -2/+2 |
| | | | | llvm-svn: 61819 | ||||
* | The phi construction algorithm used for interval reconstruction is ↵ | Owen Anderson | 2009-01-06 | 1 | -13/+27 |
| | | | | | | | | | | | complicated by two address instructions. We need to keep track of things we've processed AS USES independetly of whether we've processed them as defs. This fixes all known miscompilations when reconstruction is turned on. llvm-svn: 61802 | ||||
* | Update these argument lists for the isNormalMemory | Dan Gohman | 2009-01-06 | 1 | -3/+6 |
| | | | | | | argument. This doesn't affect current functionality. llvm-svn: 61779 | ||||
* | Use a latency value of 0 for the artificial edges inserted by | Dan Gohman | 2009-01-06 | 1 | -1/+1 |
| | | | | | | | | | | | | AddPseudoTwoAddrDeps. This lets the scheduling infrastructure avoid recalculating node heights. In very large testcases this was a major bottleneck. Thanks to Roman Levenstein for finding this! As a side effect, fold-pcmpeqd-0.ll is now scheduled better and it no longer requires spilling on x86-32. llvm-svn: 61778 | ||||
* | Construct subprogram DIEs using DebugInfo. | Devang Patel | 2009-01-05 | 1 | -0/+39 |
| | | | | llvm-svn: 61772 | ||||
* | Construct global variable DIEs using DebugInfo. | Devang Patel | 2009-01-05 | 1 | -1/+48 |
| | | | | llvm-svn: 61771 | ||||
* | Construct compile unit dies using DebugInfo. | Devang Patel | 2009-01-05 | 1 | -1/+70 |
| | | | | llvm-svn: 61768 | ||||
* | Revert r61415 and r61484. Duncan was correct that these weren't needed. | Bill Wendling | 2009-01-05 | 1 | -18/+6 |
| | | | | llvm-svn: 61765 | ||||
* | Don't call setDepthDirty/setHeightDirty when adding an edge | Dan Gohman | 2009-01-05 | 1 | -4/+8 |
| | | | | | | with latency 0, since it doesn't affect the depth or height. llvm-svn: 61762 | ||||
* | Extract source location info from DebugInfo. | Devang Patel | 2009-01-05 | 1 | -0/+78 |
| | | | | | | Add methods to add source location info in a DIE. llvm-svn: 61761 | ||||
* | Add type DIEs using DebugInfo. | Devang Patel | 2009-01-05 | 1 | -9/+79 |
| | | | | llvm-svn: 61757 | ||||
* | Construct composite type DIE using DebugInfo. | Devang Patel | 2009-01-05 | 1 | -4/+83 |
| | | | | llvm-svn: 61741 | ||||
* | TargetLowering.h #includes SelectionDAGNodes.h, so it doesn't need its | Dan Gohman | 2009-01-05 | 1 | -2/+0 |
| | | | | | | | own OpActionsCapacity magic number; it can just use ISD::BUILTIN_OP_END, as long as it takes care to round up when needed. llvm-svn: 61733 | ||||
* | s/ConstructType/ConstructTypeDIE/g | Devang Patel | 2009-01-05 | 1 | -6/+6 |
| | | | | llvm-svn: 61731 | ||||
* | Construct stuct field DIEs. | Devang Patel | 2009-01-05 | 1 | -0/+78 |
| | | | | llvm-svn: 61729 | ||||
* | Construct enumerator DIE using DebugInfo. | Devang Patel | 2009-01-05 | 1 | -0/+11 |
| | | | | llvm-svn: 61726 | ||||
* | Construct array/vector type DIEs using DebugInfo. | Devang Patel | 2009-01-05 | 1 | -0/+40 |
| | | | | llvm-svn: 61724 | ||||
* | Get rid of sentinel insertion in interval reconstruction. It just masked the | Owen Anderson | 2009-01-05 | 1 | -5/+0 |
| | | | | | | problem, rather than fixing it. The problem has now been fixed the right way. llvm-svn: 61723 | ||||
* | Tidy up #includes, deleting a bunch of unnecessary #includes. | Dan Gohman | 2009-01-05 | 11 | -11/+29 |
| | | | | llvm-svn: 61715 | ||||
* | Construct basic and derived type DIEs using DebugInfo. | Devang Patel | 2009-01-05 | 1 | -0/+44 |
| | | | | llvm-svn: 61714 | ||||
* | subsume ConstructPointerType() | Devang Patel | 2009-01-05 | 1 | -8/+2 |
| | | | | llvm-svn: 61711 | ||||
* | subsume ConstructBasicType(). | Devang Patel | 2009-01-05 | 1 | -11/+6 |
| | | | | llvm-svn: 61709 | ||||
* | squash warnings. | Devang Patel | 2009-01-05 | 2 | -1/+2 |
| | | | | llvm-svn: 61707 | ||||
* | elf writer really wants the size of the global, not the size | Chris Lattner | 2009-01-04 | 1 | -3/+3 |
| | | | | | | of the pointer to the global. llvm-svn: 61630 |