| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | Revert 124230. It was causing test failures. | Bill Wendling | 2011-01-25 | 1 | -4/+2 | |
| | | | | | llvm-svn: 124233 | |||||
| * | The floating point value is encoded in its binary form as an Imm. Convert it | Bill Wendling | 2011-01-25 | 1 | -2/+4 | |
| | | | | | | | appropriately so that it prints out the decimal representation. llvm-svn: 124230 | |||||
| * | Add support for parsing a Real value. It stores the Real value as its binary | Bill Wendling | 2011-01-25 | 1 | -1/+7 | |
| | | | | | | | | encoding. It's up to the individual back-ends to convert it to their preferred representation when printing. llvm-svn: 124229 | |||||
| * | Move unnamed_addr after the function arguments on Sabre's request. | Rafael Espindola | 2011-01-25 | 2 | -6/+6 | |
| | | | | | llvm-svn: 124209 | |||||
| * | Resolve DanglingDbgValue of PHI nodes where the use follows dbg.value ↵ | Devang Patel | 2011-01-25 | 1 | -1/+3 | |
| | | | | | | | intrinisic. llvm-svn: 124203 | |||||
| * | This assertion is too restrictive, it does not apply for dangling dbg value ↵ | Devang Patel | 2011-01-25 | 1 | -8/+0 | |
| | | | | | | | nodes (nodes where dbg.value intrinsic preceds use of the value). llvm-svn: 124202 | |||||
| * | In which I discover that zero+zero is zero, d'oh! | Duncan Sands | 2011-01-25 | 1 | -3/+3 | |
| | | | | | llvm-svn: 124188 | |||||
| * | See if this fixes llvm-gcc bootstrap. | Duncan Sands | 2011-01-25 | 1 | -1/+2 | |
| | | | | | llvm-svn: 124184 | |||||
| * | According to my auto-simplifier the most common missed simplifications in | Duncan Sands | 2011-01-25 | 2 | -13/+228 | |
| | | | | | | | | | | | | optimized code are: (non-negative number)+(power-of-two) != 0 -> true and (x | 1) != 0 -> true Instcombine knows about the second one of course, but only does it if X|1 has only one use. These fire thousands of times in the testsuite. llvm-svn: 124183 | |||||
| * | Teach mergefunc how to emit aliases safely again -- but keep it turned it off | Nick Lewycky | 2011-01-25 | 1 | -25/+79 | |
| | | | | | | | | for now. It's controlled by the HasGlobalAliases variable which is not attached to any flag yet. llvm-svn: 124182 | |||||
| * | Reorganize this so that the early exit and special cases come early | Eric Christopher | 2011-01-25 | 1 | -26/+26 | |
| | | | | | | | rather than interspersed. No functional change. llvm-svn: 124168 | |||||
| * | Don't merge restore with tail call instruction. | Evan Cheng | 2011-01-25 | 1 | -1/+6 | |
| | | | | | llvm-svn: 124167 | |||||
| * | Provide correct registers for EH stuff on ARM | Anton Korobeynikov | 2011-01-24 | 1 | -3/+4 | |
| | | | | | llvm-svn: 124151 | |||||
| * | Support printing exception section into the current one. This is the case ↵ | Anton Korobeynikov | 2011-01-24 | 1 | -1/+2 | |
| | | | | | | | when LSDASection is blank llvm-svn: 124150 | |||||
| * | Speculatively revert r124138. | Devang Patel | 2011-01-24 | 1 | -3/+1 | |
| | | | | | llvm-svn: 124142 | |||||
| * | Resolve DanglingDbgValue of PHI nodes where the use follows dbg.value ↵ | Devang Patel | 2011-01-24 | 1 | -1/+3 | |
| | | | | | | | intrinisic. llvm-svn: 124138 | |||||
| * | Temporarily workaround JM/lencod miscompile (SIGSEGV). | Andrew Trick | 2011-01-24 | 1 | -0/+2 | |
| | | | | | | | rdar://problem/8893967 llvm-svn: 124137 | |||||
| * | Give GetUnderlyingObject a TargetData, to keep it in sync | Dan Gohman | 2011-01-24 | 8 | -16/+19 | |
| | | | | | | | | | | | | with BasicAA's DecomposeGEPExpression, which recently began using a TargetData. This fixes PR8968, though the testcase is awkward to reduce. Also, update several off GetUnderlyingObject's users which happen to have a TargetData handy to pass it in. llvm-svn: 124134 | |||||
| * | fix PR8928 by clearing a stale map, patch by Jakub Staszak! | Chris Lattner | 2011-01-24 | 1 | -0/+1 | |
| | | | | | llvm-svn: 124132 | |||||
| * | Handle strings in section names the same way as gas: | Rafael Espindola | 2011-01-24 | 1 | -3/+14 | |
| | | | | | | | | * If the name is a single string, we remove the quotes * If the name starts without a quote, we include any quotes in the name llvm-svn: 124127 | |||||
| * | Add a comment. | Dan Gohman | 2011-01-24 | 1 | -0/+1 | |
| | | | | | llvm-svn: 124126 | |||||
| * | Support/CommandLine: Fix LookupNearestOption to also search extra option names. | Daniel Dunbar | 2011-01-24 | 1 | -10/+25 | |
| | | | | | llvm-svn: 124124 | |||||
| * | fix a missing shuffle pattern, PR9009. Patch by Artiom Myaskouvskey! | Chris Lattner | 2011-01-24 | 1 | -0/+3 | |
| | | | | | llvm-svn: 124102 | |||||
| * | fix PR9017, a bug where we'd assert when promoting in unreachable | Chris Lattner | 2011-01-24 | 1 | -0/+3 | |
| | | | | | | | code. llvm-svn: 124100 | |||||
| * | fix PR9015, a crash linking recursive metadata. | Chris Lattner | 2011-01-24 | 1 | -6/+11 | |
| | | | | | llvm-svn: 124099 | |||||
| * | this isn't a memset, we do convert dest[i] to one though :) | Chris Lattner | 2011-01-24 | 1 | -8/+0 | |
| | | | | | llvm-svn: 124097 | |||||
| * | with recent work, we now optimize this into: | Chris Lattner | 2011-01-24 | 1 | -20/+0 | |
| | | | | | | | | | | | | define i32 @foo(i32 %x) nounwind readnone ssp { entry: %tobool = icmp eq i32 %x, 0 %tmp5 = select i1 %tobool, i32 2, i32 1 ret i32 %tmp5 } llvm-svn: 124091 | |||||
| * | enhance SRoA to promote allocas that are used by PHI nodes. This often | Chris Lattner | 2011-01-24 | 1 | -26/+157 | |
| | | | | | | | | | | | occurs because instcombine sinks loads and inserts phis. This kicks in on such apps as 175.vpr, eon, 403.gcc, xalancbmk and a bunch of times in spec2006 in some app that uses std::deque. This resolves the last of rdar://7339113. llvm-svn: 124090 | |||||
| * | Enhance SRoA to promote allocas that are used by selects in some | Chris Lattner | 2011-01-23 | 1 | -1/+132 | |
| | | | | | | | | | | | | | | | | | | | | | common cases. This triggers a surprising number of times in SPEC2K6 because min/max idioms end up doing this. For example, code from the STL ends up looking like this to SRoA: %202 = load i64* %__old_size, align 8, !tbaa !3 %203 = load i64* %__old_size, align 8, !tbaa !3 %204 = load i64* %__n, align 8, !tbaa !3 %205 = icmp ult i64 %203, %204 %storemerge.i = select i1 %205, i64* %__n, i64* %__old_size %206 = load i64* %storemerge.i, align 8, !tbaa !3 We can now promote both the __n and the __old_size allocas. This addresses another chunk of rdar://7339113, poor codegen on stringswitch. llvm-svn: 124088 | |||||
| * | teach Value::isDereferenceablePointer that byval arguments are always | Chris Lattner | 2011-01-23 | 1 | -0/+4 | |
| | | | | | | | dereferencable, noticed by inspection. llvm-svn: 124085 | |||||
| * | Add a memset loop that LoopIdiomRecognize doesn't recognize. | Anders Carlsson | 2011-01-23 | 1 | -0/+8 | |
| | | | | | llvm-svn: 124082 | |||||
| * | Simplify some code with no functionality change. Make the test a lot more | Nick Lewycky | 2011-01-23 | 1 | -12/+4 | |
| | | | | | | | robust against smarter optimizations, using the power of FileCheck. llvm-svn: 124081 | |||||
| * | Initialize MCNoExecStack. | Rafael Espindola | 2011-01-23 | 1 | -0/+1 | |
| | | | | | llvm-svn: 124079 | |||||
| * | Add support for the --noexecstack option. | Rafael Espindola | 2011-01-23 | 8 | -20/+40 | |
| | | | | | llvm-svn: 124077 | |||||
| * | Null initialize a few variables flagged by | Ted Kremenek | 2011-01-23 | 7 | -7/+7 | |
| | | | | | | | | | | | clang's -Wuninitialized-experimental warning. While these don't look like real bugs, clang's -Wuninitialized-experimental analysis is stricter than GCC's, and these fixes have the benefit of being general nice cleanups. llvm-svn: 124073 | |||||
| * | Add support for lowercase variants. | Rafael Espindola | 2011-01-23 | 1 | -0/+14 | |
| | | | | | llvm-svn: 124071 | |||||
| * | Enhance SRoA to be more aggressive about scalarization of aggregate allocas | Chris Lattner | 2011-01-23 | 1 | -12/+114 | |
| | | | | | | | | | | | | | that have PHI or select uses of their element pointers. This can often happen when instcombine sinks two loads into a successor, inserting a phi or select. With this patch, we can scalarize the alloca, but the pinned elements are not yet promoted. This is still a win for large aggregates where only one element is used. This fixes rdar://8904039 and part of rdar://7339113 (poor codegen on stringswitch). llvm-svn: 124070 | |||||
| * | Convert two std::vectors to SmallVectors for a 3.4% speedup running -scalarrepl | Cameron Zwarich | 2011-01-23 | 1 | -2/+2 | |
| | | | | | | | on test-suite + SPEC2000 & SPEC2006. llvm-svn: 124068 | |||||
| * | have AllocaInfo store the alloca being inspected, simplifying callers. | Chris Lattner | 2011-01-23 | 1 | -22/+24 | |
| | | | | | | | No functionality change. llvm-svn: 124067 | |||||
| * | Rearrange some code a bit. Change MarkUnsafe to | Chris Lattner | 2011-01-23 | 1 | -27/+29 | |
| | | | | | | | | | handle the "Transformation preventing inst" printing, so that -scalarrepl -debug will always print the rejected instruction. No functionality change. llvm-svn: 124066 | |||||
| * | remove an old hack that avoided creating MMX datatypes. The | Chris Lattner | 2011-01-23 | 1 | -22/+1 | |
| | | | | | | | X86 backend has been fixed. llvm-svn: 124064 | |||||
| * | Use value ranges to fold ext(trunc) in SCEV when possible. | Nick Lewycky | 2011-01-23 | 1 | -0/+34 | |
| | | | | | llvm-svn: 124062 | |||||
| * | Delay the creation of eh_frame so that the user can change the defaults. | Rafael Espindola | 2011-01-23 | 4 | -21/+26 | |
| | | | | | | | Add support for SHT_X86_64_UNWIND. llvm-svn: 124059 | |||||
| * | Remove more duplicated code. | Rafael Espindola | 2011-01-23 | 10 | -111/+111 | |
| | | | | | llvm-svn: 124056 | |||||
| * | Remove duplicated code. | Rafael Espindola | 2011-01-23 | 11 | -79/+90 | |
| | | | | | llvm-svn: 124054 | |||||
| * | Have SCEV turn sext(x) into zext(x) when x is s>= 0. This applies many times in | Nick Lewycky | 2011-01-22 | 1 | -0/+4 | |
| | | | | | | | "make check" alone. llvm-svn: 124046 | |||||
| * | Add a FIXME explaining the move to a single indirect call bonus per function | Eric Christopher | 2011-01-22 | 1 | -0/+5 | |
| | | | | | | | that we can change from indirect to direct. llvm-svn: 124045 | |||||
| * | Only apply the devirtualization bonus once instead of per-call site in the | Eric Christopher | 2011-01-22 | 1 | -2/+6 | |
| | | | | | | | | | target function. Fixes part of rdar://8546196 llvm-svn: 124044 | |||||
| * | Pass sret arguments through the stack instead of through registers in Sparc ↵ | Venkatraman Govindaraju | 2011-01-22 | 3 | -4/+75 | |
| | | | | | | | backend. It makes the code generated more compliant with the sparc32 ABI. llvm-svn: 124030 | |||||
| * | Added ICC, FCC as uses of movcc instruction to generate correct code when ↵ | Venkatraman Govindaraju | 2011-01-22 | 1 | -42/+51 | |
| | | | | | | | -mattr=v9 is used. llvm-svn: 124027 | |||||

