| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | reapply: Use the new TB_NOT_REVERSABLE flag instead of special | Chris Lattner | 2010-10-08 | 3 | -38/+77 |
| | | | | | | | | | | reapply: reimplement the second half of the or/add optimization. We should now with no changes. Turns out that one missing "Defs = [EFLAGS]" can upset things a bit. llvm-svn: 116040 | ||||
| * | reapply the patch reverted in r116033: | Chris Lattner | 2010-10-08 | 4 | -65/+126 |
| | | | | | | | | | "Reimplement (part of) the or -> add optimization. Matching 'or' into 'add'" With a critical fix: the add pseudos clobber EFLAGS. llvm-svn: 116039 | ||||
| * | Update CMake. | Daniel Dunbar | 2010-10-08 | 1 | -1/+0 |
| | | | | | llvm-svn: 116034 | ||||
| * | Revert "Reimplement (part of) the or -> add optimization. Matching 'or' into | Daniel Dunbar | 2010-10-08 | 4 | -126/+65 |
| | | | | | | | 'add'", which seems to have broken just about everything. llvm-svn: 116033 | ||||
| * | Revert "Use the new TB_NOT_REVERSABLE flag instead of special ", which depends | Daniel Dunbar | 2010-10-08 | 1 | -26/+20 |
| | | | | | | | on r116007, which I am about to revert. llvm-svn: 116032 | ||||
| * | Revert "reimplement the second half of the or/add optimization. We should now", | Daniel Dunbar | 2010-10-08 | 3 | -51/+18 |
| | | | | | | | which depends on r116007, which I am about to revert. llvm-svn: 116031 | ||||
| * | Move to thumb2 loads, fixes a problem with incoming registers | Eric Christopher | 2010-10-08 | 1 | -16/+13 |
| | | | | | | | | | as thumb1. Fixes lencod. llvm-svn: 116027 | ||||
| * | reimplement the second half of the or/add optimization. We should now | Chris Lattner | 2010-10-08 | 3 | -18/+51 |
| | | | | | | | | | | | only end up emitting LEA instead of OR. If we aren't able to promote something into an LEA, we should never be emitting it as an ADD. Add some testcases that we emit "or" in cases where we used to produce an "add". llvm-svn: 116026 | ||||
| * | Enable binary encoding of some simple instructions. | Jim Grosbach | 2010-10-08 | 1 | -0/+8 |
| | | | | | llvm-svn: 116022 | ||||
| * | Make <target>CodeEmitter::getBinaryCodeForInstr() a const method. | Jim Grosbach | 2010-10-08 | 4 | -8/+8 |
| | | | | | llvm-svn: 116018 | ||||
| * | Use the new TB_NOT_REVERSABLE flag instead of special | Chris Lattner | 2010-10-08 | 1 | -20/+26 |
| | | | | | | | casing FsMOVAPDrr/FsMOVAPSrr. llvm-svn: 116016 | ||||
| * | simplify some map operations. | Chris Lattner | 2010-10-07 | 2 | -16/+14 |
| | | | | | llvm-svn: 116014 | ||||
| * | MC-COFF: Handle relaxation in COFF better. Fixes PR8321. | Michael J. Spencer | 2010-10-07 | 1 | -1/+29 |
| | | | | | llvm-svn: 116013 | ||||
| * | Delete the FormulaSorter class and inline its one method into its | Dan Gohman | 2010-10-07 | 1 | -28/+10 |
| | | | | | | | | one user. This code will be restructured soon and FormulaSorter is getting in the way. llvm-svn: 116012 | ||||
| * | Fix a spello. | Dan Gohman | 2010-10-07 | 1 | -1/+1 |
| | | | | | llvm-svn: 116011 | ||||
| * | Charge a formula for explicit multiplies on scaled registers too, | Dan Gohman | 2010-10-07 | 1 | -3/+3 |
| | | | | | | | not just base registers. llvm-svn: 116010 | ||||
| * | Use size_t for consistency. | Dan Gohman | 2010-10-07 | 1 | -1/+1 |
| | | | | | llvm-svn: 116009 | ||||
| * | When merging one use into another, transfer the offsets from | Dan Gohman | 2010-10-07 | 1 | -0/+8 |
| | | | | | | | the old use to the new one. llvm-svn: 116008 | ||||
| * | Reimplement (part of) the or -> add optimization. Matching 'or' into 'add' | Chris Lattner | 2010-10-07 | 4 | -65/+126 |
| | | | | | | | | | | | | | | | | | | | | is general goodness because it allows ORs to be converted to LEA to avoid inserting copies. However, this is bad because it makes the generated .s file less obvious and gives valgrind heartburn (tons of false positives in bitfield code). While the general fix should be in valgrind, we can at least try to avoid emitting ADD instructions that *don't* get promoted to LEA. This is more work because it requires introducing pseudo instructions to represents "add that knows the bits are disjoint", but hey, people really love valgrind. This fixes this testcase: https://bugs.kde.org/show_bug.cgi?id=242137#c20 the add r/i cases are coming next. llvm-svn: 116007 | ||||
| * | After splitting, the remaining LiveInterval may be fragmented into multiple | Jakob Stoklund Olesen | 2010-10-07 | 2 | -11/+134 |
| | | | | | | | | | | | | | | connected components. These components should be allocated different virtual registers because there is no reason for them to be allocated together. Add the ConnectedVNInfoEqClasses class to calculate the connected components, and move values to new LiveIntervals. Use it from SplitKit::rewrite by creating new virtual registers for the components. llvm-svn: 116006 | ||||
| * | Fix LSR to keep the RegUseTracker up to date when combining users. | Dan Gohman | 2010-10-07 | 1 | -8/+19 |
| | | | | | | | | | This doesn't usually matter, because the other heuristics usually succeed regardless, but it's good to keep the register use bookkeeping consistent. llvm-svn: 116005 | ||||
| * | Remove LoopIndexSplit pass. It is neither maintained nor used by anyone. | Devang Patel | 2010-10-07 | 2 | -1275/+0 |
| | | | | | llvm-svn: 116004 | ||||
| * | Unbreak cmake build. | John Thompson | 2010-10-07 | 1 | -0/+1 |
| | | | | | llvm-svn: 116003 | ||||
| * | Code refactoring. | Evan Cheng | 2010-10-07 | 2 | -104/+160 |
| | | | | | llvm-svn: 116002 | ||||
| * | Reduce casting in various tables by defining the table | Chris Lattner | 2010-10-07 | 2 | -27/+26 |
| | | | | | | | with the right types. llvm-svn: 116001 | ||||
| * | simplify code: don't build up vector only to assert it is empty. | Chris Lattner | 2010-10-07 | 1 | -8/+4 |
| | | | | | llvm-svn: 115997 | ||||
| * | Now with fewer extraneous semicolons! | Owen Anderson | 2010-10-07 | 131 | -160/+161 |
| | | | | | llvm-svn: 115996 | ||||
| * | Trivial MC code emitter shell. No instruction forms actually handled yet. | Jim Grosbach | 2010-10-07 | 1 | -3/+19 |
| | | | | | llvm-svn: 115993 | ||||
| * | Correctly check if a path is a directory. Fix by Brian Korver. | Evan Cheng | 2010-10-07 | 1 | -1/+1 |
| | | | | | llvm-svn: 115991 | ||||
| * | Provie a clearner interface so that FE can decide whether a function has ↵ | Devang Patel | 2010-10-07 | 1 | -6/+1 |
| | | | | | | | prototype or not. llvm-svn: 115988 | ||||
| * | Include the auto-generated bits for machine encoding. | Jim Grosbach | 2010-10-07 | 1 | -0/+20 |
| | | | | | llvm-svn: 115987 | ||||
| * | Remember to promote load/store types for stack to register size. | Eric Christopher | 2010-10-07 | 1 | -0/+6 |
| | | | | | llvm-svn: 115984 | ||||
| * | convert test to use the existing classes that the multipatterns | Chris Lattner | 2010-10-07 | 1 | -99/+48 |
| | | | | | | | | | | use. Since TEST is completely different than all other binops, don't define a multipattern for it. This completes factorization of binops. llvm-svn: 115982 | ||||
| * | convert cmp to use a multipattern | Chris Lattner | 2010-10-07 | 1 | -199/+181 |
| | | | | | llvm-svn: 115978 | ||||
| * | Canonicalize X86ISD::MOVDDUP nodes to v2f64 to make sure all cases match. ↵ | Evan Cheng | 2010-10-07 | 2 | -16/+22 |
| | | | | | | | Also eliminate unneeded isel patterns. rdar://8520311 llvm-svn: 115977 | ||||
| * | ARM instruction don't have instruction prefixes, so remove the helper functions | Jim Grosbach | 2010-10-07 | 1 | -16/+1 |
| | | | | | | | for them from the MCCodeEmitter. llvm-svn: 115975 | ||||
| * | Move tool_output_file into its own file. | Dan Gohman | 2010-10-07 | 2 | -32/+43 |
| | | | | | llvm-svn: 115973 | ||||
| * | Add initialization routines for Instrumentation. | Owen Anderson | 2010-10-07 | 2 | -0/+32 |
| | | | | | llvm-svn: 115971 | ||||
| * | reduce redundancy between pattern copies. | Chris Lattner | 2010-10-07 | 1 | -49/+53 |
| | | | | | llvm-svn: 115968 | ||||
| * | the opcode for BinOpMI/BinOpMI8 is always the same, remove the argument. | Chris Lattner | 2010-10-07 | 1 | -19/+19 |
| | | | | | llvm-svn: 115967 | ||||
| * | Improve comment. | Owen Anderson | 2010-10-07 | 1 | -1/+1 |
| | | | | | llvm-svn: 115966 | ||||
| * | Add initialization routines to InstCombine. | Owen Anderson | 2010-10-07 | 1 | -0/+9 |
| | | | | | llvm-svn: 115965 | ||||
| * | convert adc/sbb to a multipattern. Because the adde/sube nodes | Chris Lattner | 2010-10-07 | 1 | -310/+150 |
| | | | | | | | | | | | | are not defined as returning EFLAGS (like add_flag and friends), the entire multipattern and several of the subclasses need to be cloned. This could be handled through better instantiation support in tblgen, but it isn't meta enough. llvm-svn: 115964 | ||||
| * | Add initialization routines for VMCore. | Owen Anderson | 2010-10-07 | 1 | -2/+14 |
| | | | | | llvm-svn: 115963 | ||||
| * | Add initialization routines for Target. | Owen Anderson | 2010-10-07 | 1 | -2/+12 |
| | | | | | llvm-svn: 115957 | ||||
| * | Fix obvious mistake pointed out by Michael Spencer. | Jakob Stoklund Olesen | 2010-10-07 | 1 | -1/+1 |
| | | | | | llvm-svn: 115952 | ||||
| * | Print more loop info. | Jakob Stoklund Olesen | 2010-10-07 | 1 | -0/+16 |
| | | | | | llvm-svn: 115951 | ||||
| * | Print out MBB number when rewriting. | Jakob Stoklund Olesen | 2010-10-07 | 1 | -1/+2 |
| | | | | | llvm-svn: 115950 | ||||
| * | Add initialization routines for CodeGen. | Owen Anderson | 2010-10-07 | 2 | -0/+60 |
| | | | | | llvm-svn: 115949 | ||||
| * | Add an implementation of the initialization routine for IPA. | Owen Anderson | 2010-10-07 | 1 | -0/+29 |
| | | | | | llvm-svn: 115947 | ||||

