summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Update header.Eric Christopher2010-07-201-1/+1
| | | | llvm-svn: 108883
* Convert the internal PassRegistrar class into a new, external PassRegistry ↵Owen Anderson2010-07-202-99/+21
| | | | | | class. No intended functionality change at this point. llvm-svn: 108877
* hopefully teach cmake to build the .inc file.Chris Lattner2010-07-201-0/+9
| | | | llvm-svn: 108874
* cmake tooChris Lattner2010-07-201-0/+6
| | | | llvm-svn: 108872
* forgot to add a fileChris Lattner2010-07-201-0/+21
| | | | llvm-svn: 108870
* start straightening out libedis's dependencies and make it fitChris Lattner2010-07-209-1/+1779
| | | | | | | | | | | | | | | | better in the llvm world. Among other things, this changes: 1. The guts of libedis are now moved into lib/MC/MCDisassembler 2. llvm-mc now depends on lib/MC/MCDisassembler, not tools/edis, so edis and mc don't have to be built in series. 3. lib/MC/MCDisassembler no longer depends on the C api, the C API depends on it. 4. Various code cleanup changes. There is still a lot to be done to make edis fit with the llvm design, but this is an incremental step in the right direction. llvm-svn: 108869
* Remember that the induction variable is always a PHINode andDan Gohman2010-07-201-4/+4
| | | | | | | use getIncomingValueForBlock instead of LoopInfo::getCanonicalInductionVariableIncrement. llvm-svn: 108865
* Fix SCEV denormalization of expressions where the exit value fromDan Gohman2010-07-201-32/+55
| | | | | | | one loop is involved in the increment of an addrec for another loop. This fixes rdar://8168938. llvm-svn: 108863
* Pull out r108755. After offline discussion with Chris, we're going to go a ↵Owen Anderson2010-07-201-17/+10
| | | | | | different direction with this. llvm-svn: 108856
* Add a fast path for x - x.Dan Gohman2010-07-201-0/+4
| | | | llvm-svn: 108855
* Simplify this code; LoopInfo::getCanonicalInductionVariable will onlyDan Gohman2010-07-201-3/+6
| | | | | | find integer induction variables. llvm-svn: 108853
* Make getOrInsertCanonicalInductionVariable guarantee that itsDan Gohman2010-07-201-2/+2
| | | | | | result is a PHINode*. llvm-svn: 108852
* Change an argument from an Instruction* to a Value*, which is allDan Gohman2010-07-201-5/+5
| | | | | | that is needed here. llvm-svn: 108850
* Minor code cleanups.Dan Gohman2010-07-201-0/+5
| | | | llvm-svn: 108848
* Appease the colonials.Jakob Stoklund Olesen2010-07-202-4/+4
| | | | llvm-svn: 108845
* Using BIC for immediates needs an extra bump for its complexity to getJim Grosbach2010-07-201-0/+1
| | | | | | instruction selection to prefer it when possible. rdar://7903972 llvm-svn: 108844
* Beginning SplitKit - utility classes for live range splitting.Jakob Stoklund Olesen2010-07-204-1/+261
| | | | | | | | | This is a work in progress. So far we have some basic loop analysis to help determine where it is useful to split a live range around a loop. The actual loop splitting code from Splitter.cpp is also going to move in here. llvm-svn: 108842
* Removed un-used code.Jim Grosbach2010-07-201-49/+0
| | | | llvm-svn: 108841
* Updated css classes for the pressure table legend.Lang Hames2010-07-201-3/+3
| | | | llvm-svn: 108839
* Oops - I tables render poorly in Chrome without this explicit height ↵Lang Hames2010-07-201-1/+1
| | | | | | specification. llvm-svn: 108824
* Use run-length encoding to represent identical adjacent cells in the pressureLang Hames2010-07-202-34/+104
| | | | | | | | and interval table. Reduces output HTML file sizes by ~80% in my test cases. Also fix access of private member type by << operator. llvm-svn: 108823
* Added support for turning HTML indentation on and off (indentation off by ↵Lang Hames2010-07-202-86/+123
| | | | | | | | default). Reduces output file size ~20% on my test cases. llvm-svn: 108822
* Fix PR7174, a couple o Mips fixes:Bruno Cardoso Lopes2010-07-202-1/+21
| | | | | | | | | | | - Fix a typo for PIC check during jmp table lowering - Also fix the "first jump table basic block is not considered only reachable by fall through" problem, use this ad-hoc solution until I come up with something better. Patch by stetorvs@gmail.com llvm-svn: 108820
* Speculatively revert r108813, in an attempt to get the self-host buildbots ↵Owen Anderson2010-07-2011-42/+39
| | | | | | | | working again. I don't see why this patch would cause them to fail the way they are, but none of the other intervening patches seem likely either. llvm-svn: 108818
* Fix Mips PR7473. Patch by stetorvs@gmail.comBruno Cardoso Lopes2010-07-201-3/+3
| | | | llvm-svn: 108816
* Switched to rendering after allocation (but before rewriting) in PBQP.Lang Hames2010-07-203-38/+77
| | | | | | | Updated renderer to use allocation information from VirtRegMap (if available) to render spilled intervals differently. llvm-svn: 108815
* Reapply r108794, a fix for the failing test from last time.Owen Anderson2010-07-2011-39/+42
| | | | llvm-svn: 108813
* Constify some arguments.Eric Christopher2010-07-209-14/+14
| | | | llvm-svn: 108812
* Revert r108794, "Separate PassInfo into two classes: a constructor-freeDaniel Dunbar2010-07-2010-41/+38
| | | | | | | superclass (StaticPassInfo) and a constructor-ful subclass (PassInfo).", it is breaking teh everything. llvm-svn: 108805
* Separate PassInfo into two classes: a constructor-free superclass ↵Owen Anderson2010-07-2010-38/+41
| | | | | | (StaticPassInfo) and a constructor-ful subclass (PassInfo). llvm-svn: 108794
* Minor code simplification.Dan Gohman2010-07-201-6/+3
| | | | llvm-svn: 108793
* Don't hoist things out of a large switch inside aDale Johannesen2010-07-201-2/+6
| | | | | | | | | | loop, for the reasons in the comments. This is a major win on 253.perlbmk on ARM Darwin. I expect it to be a good heuristic in general, but it's possible some things will regress; I'll be watching. 7940152. llvm-svn: 108792
* Add AVX vbroadcast new instructionBruno Cardoso Lopes2010-07-202-0/+28
| | | | llvm-svn: 108788
* Update CMake files.Daniel Dunbar2010-07-204-8/+8
| | | | llvm-svn: 108787
* Correct line info for declarations/definitions. Radar 8063111.Stuart Hastings2010-07-192-14/+12
| | | | llvm-svn: 108784
* sink the arm implementations of ASmPrinter and MCInstLowerChris Lattner2010-07-193-1/+1
| | | | | | | | out of the AsmPrinter directory into libarm. Now the ARM InstPrinters depend jsut on the MC stuff, not on vmcore or codegen. llvm-svn: 108783
* fix a layering problem by moving the x86 implementationChris Lattner2010-07-194-5/+5
| | | | | | | | of AsmPrinter and InstLowering into libx86 and out of the asmprinter subdirectory. Now X86/AsmPrinter just depends on MC stuff, not all of codegen and LLVM IR. llvm-svn: 108782
* Add 256-bit vaddsub, vhadd, vhsub, vblend and vdpp instructions!Bruno Cardoso Lopes2010-07-196-81/+128
| | | | llvm-svn: 108769
* Fix memory leak reported by valgrind. Devang Patel2010-07-191-23/+31
| | | | | | Do not visit operands of old instruction. Visit all operands of new instruction. llvm-svn: 108767
* After a custom inserter, in a block which has constant instructions,Dan Gohman2010-07-191-0/+1
| | | | | | | update the current basic block in addition to the current insert position, so that they remain consistent. This fixes rdar://8204072. llvm-svn: 108765
* ARM has to provide its own TargetLowering::findRepresentativeClass because ↵Evan Cheng2010-07-193-6/+27
| | | | | | its scalar floating point registers alias its vector registers. llvm-svn: 108761
* Change the implemented interfaces list on PassInfo from a std::vector to a ↵Owen Anderson2010-07-191-10/+17
| | | | | | | | | manually implemented linked list. This is a little slower and involves more malloc'ing, but these lists are typically short, and it allows PassInfo to be entirely constant initializable. llvm-svn: 108755
* MC/Mach-O: Silently ignore .file directives instead of error'ing out onDaniel Dunbar2010-07-191-2/+8
| | | | | | | them. They aren't important enough to abort the entire assembly, and failing early makes testing more annoying. llvm-svn: 108747
* X86: Mark JMP{32,64}[mr] as requires 32-bit/64-bit mode. They are the sameDaniel Dunbar2010-07-192-4/+4
| | | | | | | | instruction, we only want to allow the one for the current subtarget. - This also fixes suffix matching for jmp instructions, because it eliminates the ambiguity between 'jmpl' and 'jmpq'. llvm-svn: 108746
* Tweak per Chris' comments.Owen Anderson2010-07-191-7/+8
| | | | llvm-svn: 108736
* Teach computeRegisterProperties() to compute "representative" register class ↵Evan Cheng2010-07-191-0/+52
| | | | | | | | for legal value types. A "representative" register class is the largest legal super-reg register class for a value type. e.g. On i386, GR32 is the rep register class for i8 / i16 / i32; on x86_64 it would be GR64. This property will be used by the register pressure tracking instruction scheduler. llvm-svn: 108735
* Spillers may alter MachineLoopInfo when breaking critical edges, so make itJakob Stoklund Olesen2010-07-194-12/+15
| | | | | | non-const. llvm-svn: 108734
* Fix PR 7662.Devang Patel2010-07-191-0/+1
| | | | | | Do not try to insert local variable info to a DIE used for function declaration. llvm-svn: 108731
* Since ARM emits inline jump tables as part of the ConstantIsland pass,Jim Grosbach2010-07-192-0/+6
| | | | | | | | it should set the jump table encloding the EK_Inline. This prevents a second, unused, copy of the table from being emitted after the function body. PR6581. llvm-svn: 108730
* revert so I can get the right PR# in the log message.Jim Grosbach2010-07-192-6/+0
| | | | llvm-svn: 108727
OpenPOWER on IntegriCloud