| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | If a symbol is used as tls, mark it as tls even if not declare as so. Probably | Rafael Espindola | 2010-11-24 | 2 | -2/+54 | |
| | | | | | | | fixes PR8659. llvm-svn: 120076 | |||||
| * | include/llvm/System/system_error.h: ECANCELED is undefined on Cygwin-1.5. | NAKAMURA Takumi | 2010-11-24 | 1 | -0/+4 | |
| | | | | | llvm-svn: 120072 | |||||
| * | Tweak ImmutableMap/ImmutableSet/ImmutableList APIs | Ted Kremenek | 2010-11-24 | 5 | -260/+235 | |
| | | | | | | | | | | | to use lowercase letters for the start of most method names and to replace some method names with more descriptive names (e.g., "getLeft()" instead of "Left()"). No real functionality change. llvm-svn: 120070 | |||||
| * | Generalize overflowLeaf to also handle overflows in branch nodes. | Jakob Stoklund Olesen | 2010-11-24 | 1 | -29/+50 | |
| | | | | | | | | This doesn't quite work yet because the calls to treeDecrement and treeIncrement operate at the leaf level, not on pathNode(Level) as required. llvm-svn: 120068 | |||||
| * | add a MemoryBuffer::getOpenFile method, which turns an open | Chris Lattner | 2010-11-23 | 2 | -4/+16 | |
| | | | | | | | file descriptor into a MemoryBuffer (and closes the FD). llvm-svn: 120065 | |||||
| * | system_error: Add fixme. | Michael J. Spencer | 2010-11-23 | 1 | -0/+3 | |
| | | | | | llvm-svn: 120059 | |||||
| * | Rename SimplifyDistributed to the more meaningfull name SimplifyByFactorizing. | Duncan Sands | 2010-11-23 | 4 | -15/+15 | |
| | | | | | llvm-svn: 120051 | |||||
| * | The srem -> urem transform is not safe for any divisor that's not a power of ↵ | Benjamin Kramer | 2010-11-23 | 3 | -16/+14 | |
| | | | | | | | | | | | two. E.g. -5 % 5 is 0 with srem and 1 with urem. Also addresses Frits van Bommel's comments. llvm-svn: 120049 | |||||
| * | Replace calls to ConstantFoldInstruction with calls to SimplifyInstruction | Duncan Sands | 2010-11-23 | 2 | -11/+12 | |
| | | | | | | | | in two places that are really interested in simplified instructions, not constants. llvm-svn: 120044 | |||||
| * | Constant folding here is pointless, because InstructionSimplify | Duncan Sands | 2010-11-23 | 1 | -8/+1 | |
| | | | | | | | | (which does constant folding and more) is called a few lines later. llvm-svn: 120042 | |||||
| * | Move the ARM reloc constants to Support/ELF.h | Jason W Kim | 2010-11-23 | 3 | -142/+142 | |
| | | | | | llvm-svn: 120035 | |||||
| * | Recognize sign/zero-extended constant BUILD_VECTORs for VMULL operations. | Bob Wilson | 2010-11-23 | 2 | -13/+181 | |
| | | | | | | | | We need to check if the individual vector elements are sign/zero-extended values. For now this only handles constants values. Radar 8687140. llvm-svn: 120034 | |||||
| * | Fix copy-and-paste error in exception message. | Bob Wilson | 2010-11-23 | 1 | -1/+1 | |
| | | | | | llvm-svn: 120033 | |||||
| * | InstCombine: Reduce "X shift (A srem B)" to "X shift (A urem B)" iff B is ↵ | Benjamin Kramer | 2010-11-23 | 3 | -10/+28 | |
| | | | | | | | | | positive. This allows to transform the rem in "1 << ((int)x % 8);" to an and. llvm-svn: 120028 | |||||
| * | Propagate LeftDistributes and RightDistributes into their only uses. | Duncan Sands | 2010-11-23 | 1 | -6/+4 | |
| | | | | | | | Stylistic improvement suggested by Frits van Bommel. llvm-svn: 120026 | |||||
| * | Fix typo pointed out by Frits van Bommel and Marius Wachtler. | Duncan Sands | 2010-11-23 | 1 | -1/+1 | |
| | | | | | llvm-svn: 120025 | |||||
| * | Exploit distributive laws (eg: And distributes over Or, Mul over Add, etc) in a | Duncan Sands | 2010-11-23 | 5 | -42/+144 | |
| | | | | | | | | | | | | | fairly systematic way in instcombine. Some of these cases were already dealt with, in which case I removed the existing code. The case of Add has a bunch of funky logic which covers some of this plus a few variants (considers shifts to be a form of multiplication), which I didn't touch. The simplification performed is: A*B+A*C -> A*(B+C). The improvement is to do this in cases that were not already handled [such as A*B-A*C -> A*(B-C), which was reported on the mailing list], and also to do it more often by not checking for "only one use" if "B+C" simplifies. llvm-svn: 120024 | |||||
| * | Division by pow-of-2 is not cheap on SPU, do it with | Kalle Raiskila | 2010-11-23 | 2 | -2/+22 | |
| | | | | | | | shifts. llvm-svn: 120022 | |||||
| * | Implement the rex64 prefix. | Rafael Espindola | 2010-11-23 | 2 | -1/+5 | |
| | | | | | llvm-svn: 120017 | |||||
| * | Expand a little on the description of what InstructionSimplify does. | Duncan Sands | 2010-11-23 | 2 | -5/+9 | |
| | | | | | llvm-svn: 120016 | |||||
| * | Clarify that constant folding of instructions applies when all operands | Duncan Sands | 2010-11-23 | 2 | -16/+18 | |
| | | | | | | | | | are constant. There was in fact one exception to this (phi nodes) - so remove that exception (InstructionSimplify handles this so there should be no loss). llvm-svn: 120015 | |||||
| * | Invalidate the layout on any relaxation, not just Instructions. Bug found by ↵ | Rafael Espindola | 2010-11-23 | 2 | -13/+14 | |
| | | | | | | | | | David Meyer. While here, remove unused argument and rename UpdateForSlide to Invalidate. llvm-svn: 120009 | |||||
| * | Produce a relocation for pcrel absolute values. Based on a patch by David Meyer. | Rafael Espindola | 2010-11-23 | 2 | -8/+28 | |
| | | | | | llvm-svn: 120006 | |||||
| * | Optimize a common case in the Lengauer-Tarjan dominators algorithm. This gives a | Cameron Zwarich | 2010-11-23 | 1 | -2/+9 | |
| | | | | | | | | | 9.7% speedup running domtree on test-suite. Reviewed by Chris Lattner. llvm-svn: 120003 | |||||
| * | Revert functionality doug added in r98575 that was never | Chris Lattner | 2010-11-23 | 2 | -24/+15 | |
| | | | | | | | documented and only used by some clang stuff I just removed. llvm-svn: 120002 | |||||
| * | Reuse data fragments while lowering. Patch by David Meyer. | Rafael Espindola | 2010-11-23 | 2 | -28/+86 | |
| | | | | | llvm-svn: 119999 | |||||
| * | Fix formatting nits in the coding standards. Reviewed by clattner. | Zhanyong Wan | 2010-11-23 | 1 | -14/+14 | |
| | | | | | llvm-svn: 119998 | |||||
| * | fix this harder. | Chris Lattner | 2010-11-23 | 1 | -2/+2 | |
| | | | | | llvm-svn: 119994 | |||||
| * | fix a bug I introduced on the other side of the #ifdef | Chris Lattner | 2010-11-23 | 1 | -2/+2 | |
| | | | | | llvm-svn: 119993 | |||||
| * | reimplement SwapByteOrder.h in terms of overloading instead of | Chris Lattner | 2010-11-23 | 3 | -53/+52 | |
| | | | | | | | being in terms of excessively complex template logic. llvm-svn: 119992 | |||||
| * | Renaming ISD::BIT_CONVERT to ISD::BITCAST to better reflect the LLVM IR concept. | Wesley Peck | 2010-11-23 | 30 | -1145/+1142 | |
| | | | | | llvm-svn: 119990 | |||||
| * | add a 'LLVMConstIntOfArbitraryPrecision' api to the C api, | Chris Lattner | 2010-11-23 | 2 | -0/+11 | |
| | | | | | | | patch by Greg Pfeil! llvm-svn: 119989 | |||||
| * | duncan's spider sense was right, I completely reversed the condition | Chris Lattner | 2010-11-23 | 2 | -12/+12 | |
| | | | | | | | on this instcombine xform. This fixes a miscompilation of 403.gcc. llvm-svn: 119988 | |||||
| * | filecheckize | Chris Lattner | 2010-11-23 | 2 | -17/+22 | |
| | | | | | llvm-svn: 119987 | |||||
| * | Fixed some style issues (no _, no spc after !) | Jason W Kim | 2010-11-22 | 1 | -6/+6 | |
| | | | | | llvm-svn: 119986 | |||||
| * | Remove duplicated constants. Thanks to Jason for noticing it. | Rafael Espindola | 2010-11-22 | 2 | -42/+26 | |
| | | | | | llvm-svn: 119985 | |||||
| * | InstCombine: Implement X - A*-B -> X + A*B. | Benjamin Kramer | 2010-11-22 | 3 | -16/+29 | |
| | | | | | llvm-svn: 119984 | |||||
| * | Make the <ARCH>ELFObjectWriter statics private | Jason W Kim | 2010-11-22 | 1 | -0/+3 | |
| | | | | | llvm-svn: 119982 | |||||
| * | Fix misplaced statics. | Jason W Kim | 2010-11-22 | 1 | -6/+5 | |
| | | | | | llvm-svn: 119981 | |||||
| * | Kill trailing whitespace | Jason W Kim | 2010-11-22 | 1 | -3/+3 | |
| | | | | | llvm-svn: 119979 | |||||
| * | Refactor the ELFRelocationEntry (pull up) and move the arch-specific statics ↵ | Jason W Kim | 2010-11-22 | 1 | -46/+54 | |
| | | | | | | | | | | | to inside the class where it belongs. Next step is to rationally break apart the RecordRelocation() Probably the step will be to have 1 member function for ech slot of the ELFRelocationEntry() llvm-svn: 119978 | |||||
| * | Fix epilogue codegen to avoid leaving the stack pointer in an invalid | Evan Cheng | 2010-11-22 | 9 | -37/+124 | |
| | | | | | | | | | | | | | | | | | | state. Previously Thumb2 would restore sp from fp like this: mov sp, r7 sub, sp, #4 If an interrupt is taken after the 'mov' but before the 'sub', callee-saved registers might be clobbered by the interrupt handler. Instead, try restoring directly from sp: add sp, #4 Or, if necessary (with VLA, etc.) use a scratch register to compute sp and then restore it: sub.w r4, r7, #8 mov sp, r7 rdar://8465407 llvm-svn: 119977 | |||||
| * | Add a newline. | Mikhail Glushenkov | 2010-11-22 | 1 | -1/+2 | |
| | | | | | llvm-svn: 119976 | |||||
| * | llvmc: Make -march/-mcpu/-mtune behaviour more consistent with gcc. | Mikhail Glushenkov | 2010-11-22 | 1 | -6/+6 | |
| | | | | | llvm-svn: 119975 | |||||
| * | If a GEP index simply advances by multiples of a type of zero size, | Duncan Sands | 2010-11-22 | 3 | -16/+35 | |
| | | | | | | | then replace the index with zero. llvm-svn: 119974 | |||||
| * | Fix a bug with extractelement on SPU. | Kalle Raiskila | 2010-11-22 | 2 | -2/+14 | |
| | | | | | | | | In the attached testcase, the element was never extracted (missing rotate). llvm-svn: 119973 | |||||
| * | Add basic CFI methods to the streamer interface. | Rafael Espindola | 2010-11-22 | 4 | -7/+133 | |
| | | | | | llvm-svn: 119972 | |||||
| * | Move the "gep undef" -> "undef" transform from instcombine to | Duncan Sands | 2010-11-22 | 2 | -7/+11 | |
| | | | | | | | InstructionSimplify. llvm-svn: 119970 | |||||
| * | Remove some #includes. | Rafael Espindola | 2010-11-22 | 2 | -2/+3 | |
| | | | | | llvm-svn: 119967 | |||||
| * | Implement the "if (X == 6 || X == 4)" -> "if ((X|2) == 6)" optimization. | Benjamin Kramer | 2010-11-22 | 3 | -11/+69 | |
| | | | | | | | | This currently only catches the most basic case, a two-case switch, but can be extended later. llvm-svn: 119964 | |||||

