summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* Increase default inlining aggressiveness in partialDale Johannesen2009-01-111-2/+2
| | | | | | | | | compensation for turning off gcc's inliner. This gets us closer to the amount of inlining we were getting before. It is not a win on everything, of course, but seems to gain overall. llvm-svn: 62058
* drats! remove tabsGabor Greif2009-01-111-1/+1
| | | | llvm-svn: 62056
* simplify CallSite helper class to not consult the Instruction'sGabor Greif2009-01-112-80/+71
| | | | | | | | opcode on each delegation. Instead the information is cached on construction and the cached flag used thereafter. Introduced two predicates: isCall and isInvoke. llvm-svn: 62055
* Implement PR3313, and while I'm at it address a very FAQ.Chris Lattner2009-01-111-2/+38
| | | | llvm-svn: 62048
* Duncan is nervous about undefinedness of % with negatives. I'mChris Lattner2009-01-111-1/+1
| | | | | | not thrilled about 64-bit % in general, so rewrite to use * instead. llvm-svn: 62047
* do not generated GEPs into vectors where they don't already exist.Chris Lattner2009-01-111-4/+3
| | | | | | We should treat vectors as atomic types, not like arrays. llvm-svn: 62046
* Make a couple of cleanups to the instcombine bitcast/gep Chris Lattner2009-01-111-12/+13
| | | | | | | | | | | | | canonicalization transform based on duncan's comments: 1) improve the comment about %. 2) within our index loop make sure the offset stays within the *type size*, instead of within the *abi size*. This allows us to reason explicitly about landing in tail padding and means that issues like non-zero offsets into [0 x foo] types don't occur anymore. llvm-svn: 62045
* Use the spiffy new getAlignmentFromAttrs function.Nick Lewycky2009-01-111-1/+1
| | | | llvm-svn: 62039
* CheckForPhysRegDependency should not return copy cost. It's not used. No ↵Evan Cheng2009-01-111-9/+4
| | | | | | functionality change. llvm-svn: 62036
* Fix naming of file.Bill Wendling2009-01-111-1/+1
| | | | llvm-svn: 62035
* Fix the example syntax for named sections.Dan Gohman2009-01-111-1/+1
| | | | llvm-svn: 62033
* This is a dup of pr2659.ll.Evan Cheng2009-01-101-41/+0
| | | | llvm-svn: 62029
* Adding unittests for SmallVector. Test by Talin.Bill Wendling2009-01-101-0/+383
| | | | llvm-svn: 62025
* 80 col violation.Evan Cheng2009-01-101-1/+2
| | | | llvm-svn: 62024
* Reduce initial small vector sizes.Devang Patel2009-01-101-6/+6
| | | | llvm-svn: 62023
* Fix thinko. Create parent scope if parent descriptor is *not* null.Devang Patel2009-01-101-2/+2
| | | | llvm-svn: 62022
* Duplicated node may produce a non-physical register def.Evan Cheng2009-01-093-4/+47
| | | | llvm-svn: 62015
* Add test case from PR2659.Evan Cheng2009-01-091-0/+30
| | | | llvm-svn: 62006
* Minor debug output tweak.Evan Cheng2009-01-091-2/+2
| | | | llvm-svn: 62005
* This has been replaced by llvm/utils/lint/cpp_lint.py, which is moreMisha Brukman2009-01-091-5/+0
| | | | | | comprehensive and can support more complex style analysis. llvm-svn: 62002
* Removed trailing whitespace.Misha Brukman2009-01-0930-929/+929
| | | | llvm-svn: 62000
* Request DwarfWriter. This will be used to handle dbg_* intrinsics.Devang Patel2009-01-093-3/+10
| | | | llvm-svn: 61999
* fix typo Duncan noticed.Chris Lattner2009-01-091-1/+1
| | | | llvm-svn: 61997
* Fix PR3304Chris Lattner2009-01-092-2/+27
| | | | llvm-svn: 61995
* Removed trailing whitespace from Makefiles.Misha Brukman2009-01-0945-102/+102
| | | | llvm-svn: 61991
* Support llvmc plugins in out-of-tree projects.Mikhail Glushenkov2009-01-091-0/+1
| | | | llvm-svn: 61990
* Add a --check-graph option to llvmc.Mikhail Glushenkov2009-01-096-7/+195
| | | | llvm-svn: 61989
* PR2659 was fixed by r61847. Add the testcase as a regression test.Dan Gohman2009-01-091-0/+33
| | | | llvm-svn: 61986
* Implement rdar://6480391, extending of equality icmp's to avoid a truncation.Chris Lattner2009-01-093-4/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I noticed this in the code compiled for a routine using std::map, which produced this code: %25 = tail call i32 @memcmp(i8* %24, i8* %23, i32 6) nounwind readonly %.lobit.i = lshr i32 %25, 31 ; <i32> [#uses=1] %tmp.i = trunc i32 %.lobit.i to i8 ; <i8> [#uses=1] %toBool = icmp eq i8 %tmp.i, 0 ; <i1> [#uses=1] br i1 %toBool, label %bb3, label %bb4 which compiled to: call L_memcmp$stub shrl $31, %eax testb %al, %al jne LBB1_11 ## with this change, we compile it to: call L_memcmp$stub testl %eax, %eax js LBB1_11 This triggers all the time in common code, with patters like this: %169 = and i32 %ply, 1 ; <i32> [#uses=1] %170 = trunc i32 %169 to i8 ; <i8> [#uses=1] %toBool = icmp ne i8 %170, 0 ; <i1> [#uses=1] %7 = lshr i32 %6, 24 ; <i32> [#uses=1] %9 = trunc i32 %7 to i8 ; <i8> [#uses=1] %10 = icmp ne i8 %9, 0 ; <i1> [#uses=1] etc llvm-svn: 61985
* Remove some old code that looks like a remanant from signed-types days.Chris Lattner2009-01-091-23/+0
| | | | llvm-svn: 61984
* Fix PR3298, a crash in Jump Threading. Apparently even Chris Lattner2009-01-092-0/+53
| | | | | | jump threading can have bugs, who knew? ;-) llvm-svn: 61983
* this doesn't depend on the gcc early inliner anymore.Chris Lattner2009-01-091-1/+1
| | | | llvm-svn: 61982
* PR3290 is now fixed.Chris Lattner2009-01-091-5/+1
| | | | llvm-svn: 61981
* Fix part 3/2 of PR3290, making instcombine zap (gep(bitcast)) when possible.Chris Lattner2009-01-092-81/+127
| | | | llvm-svn: 61980
* this test should not run opt -std-compile-opts, it should run Chris Lattner2009-01-091-114/+40
| | | | | | just llc. llvm-svn: 61979
* add a helper method.Chris Lattner2009-01-091-0/+7
| | | | llvm-svn: 61978
* fit in 80 colsChris Lattner2009-01-091-2/+2
| | | | llvm-svn: 61977
* move some code, check to see if the input to the GEP is a bitcastChris Lattner2009-01-091-23/+22
| | | | | | (which is constant time and cheap) before checking hasAllZeroIndices. llvm-svn: 61976
* Add load-folding table entries for MOVDQA.Dan Gohman2009-01-091-0/+6
| | | | llvm-svn: 61972
* Whitespace and other minor adjustments to make SSE instructions haveDan Gohman2009-01-091-26/+32
| | | | | | | the same formatting as their corresponding SSE2 instructions, for consistency. llvm-svn: 61971
* Adjustments to last patch based on review.Dale Johannesen2009-01-096-11/+34
| | | | llvm-svn: 61969
* 61949 accidentally introduced an escaped newline. Fix this by makingDan Gohman2009-01-081-1/+1
| | | | | | the comment a little more verbose. llvm-svn: 61959
* Convert DwarfWriter into a pass.Devang Patel2009-01-088-76/+83
| | | | | | 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 Gohman2009-01-083-4/+4
| | | | llvm-svn: 61950
* Fix the comment for lltok::backslash.Dan Gohman2009-01-081-1/+1
| | | | llvm-svn: 61949
* Fix the path to llvm/Assembly/Parser.h in a comment.Dan Gohman2009-01-081-1/+1
| | | | llvm-svn: 61948
* Correct the form of the atomic opcode names in a comment.Dan Gohman2009-01-081-2/+2
| | | | llvm-svn: 61947
* Do not inline functions with (dynamic) alloca intoDale Johannesen2009-01-085-4/+70
| | | | | | | | | | | functions that don't already have a (dynamic) alloca. Dynamic allocas cause inefficient codegen and we shouldn't propagate this (behavior follows gcc). Two existing tests assumed such inlining would be done; they are hacked by adding an alloca in the caller, preserving the point of the tests. llvm-svn: 61946
* Use mayBeOverridden here, in anticipation of theDuncan Sands2009-01-081-2/+2
| | | | | | day when more linkage types will be handled. llvm-svn: 61944
* ValueTracker can't assume that an alloca with no specified alignment Chris Lattner2009-01-082-1/+27
| | | | | | | | will get its preferred alignment. It has to be careful and cautiously assume it will just get the ABI alignment. This prevents instcombine from rounding up the alignment of a load/store without adjusting the alignment of the alloca. llvm-svn: 61934
OpenPOWER on IntegriCloud