aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Simplify test.Evan Cheng2008-05-091-3/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50911 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename Example.td to Graph.td.Mikhail Glushenkov2008-05-092-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50910 91177308-0d34-0410-b5e6-96231b3b80d8
* use doxygen comments for makeBuffer()Nick Kledzik2008-05-091-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50908 91177308-0d34-0410-b5e6-96231b3b80d8
* don't sink invokes, even if they are readonly. This fixes aChris Lattner2008-05-091-1/+2
| | | | | | | crash on kimwitu++. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50901 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a type and formatting.Duncan Sands2008-05-091-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50900 91177308-0d34-0410-b5e6-96231b3b80d8
* ignore Output dirsGabor Greif2008-05-090-0/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50899 91177308-0d34-0410-b5e6-96231b3b80d8
* ignore AutoGenerated.inc, it is created by TableGenGabor Greif2008-05-090-0/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50898 91177308-0d34-0410-b5e6-96231b3b80d8
* ignore Output dirGabor Greif2008-05-090-0/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50897 91177308-0d34-0410-b5e6-96231b3b80d8
* Reapply 50867: A small refactoring (extract method) + some comment fixes.Mikhail Glushenkov2008-05-092-55/+66
| | | | | | | Fixed the build breakage, sorry for that. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50895 91177308-0d34-0410-b5e6-96231b3b80d8
* add support for pattern matching 'neg'Chris Lattner2008-05-092-4/+31
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50883 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement PR2298. This transforms:Chris Lattner2008-05-093-0/+33
| | | | | | | | | ~x < ~y --> y < x -x == -y --> x == y git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50882 91177308-0d34-0410-b5e6-96231b3b80d8
* restore doxygen comment.Chris Lattner2008-05-091-17/+16
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50881 91177308-0d34-0410-b5e6-96231b3b80d8
* <rdar://problem/5917641> use getMemBufferCopy if supplied buffer is not ↵Nick Kledzik2008-05-092-4/+20
| | | | | | already zero terminated git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50880 91177308-0d34-0410-b5e6-96231b3b80d8
* Check for validity of aliasee pointer before dereference.Anton Korobeynikov2008-05-081-1/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50878 91177308-0d34-0410-b5e6-96231b3b80d8
* Use movq to move low half of XMM register and zero-extend the rest.Evan Cheng2008-05-082-1/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50874 91177308-0d34-0410-b5e6-96231b3b80d8
* conservatively say that volatile stores read memory.Chris Lattner2008-05-081-2/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50872 91177308-0d34-0410-b5e6-96231b3b80d8
* Revertin 50867 since it was breaking the build.Tanya Lattner2008-05-082-64/+53
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50871 91177308-0d34-0410-b5e6-96231b3b80d8
* store can't read from memory.Chris Lattner2008-05-081-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50869 91177308-0d34-0410-b5e6-96231b3b80d8
* Add -E and -S optionsMikhail Glushenkov2008-05-081-0/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50868 91177308-0d34-0410-b5e6-96231b3b80d8
* A small refactoring (extract method) + some comment fixes.Mikhail Glushenkov2008-05-082-53/+64
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50867 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove dead return. Thanks to Bill for the review!Chris Lattner2008-05-081-2/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50863 91177308-0d34-0410-b5e6-96231b3b80d8
* Improve pass documentation and comments.Gordon Henriksen2008-05-086-102/+136
| | | | | | Patch by Matthijs Kooijman! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50861 91177308-0d34-0410-b5e6-96231b3b80d8
* More than just loads can read from memory: readonly calls like strlenChris Lattner2008-05-082-4/+32
| | | | | | | | also need to be checked for memory modifying instructions before we can sink them. THis fixes the second half of PR2297. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50860 91177308-0d34-0410-b5e6-96231b3b80d8
* Make instcombine's DSE respect loads as well as stores. It is not safe toChris Lattner2008-05-082-1/+26
| | | | | | | | | | | | | | delete the first store in: store x -> p load p store y -> p This is for PR2297. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50859 91177308-0d34-0410-b5e6-96231b3b80d8
* add a new Instruction::mayReadFromMemory predicate, makeChris Lattner2008-05-082-2/+23
| | | | | | | Instruction::mayWriteToMemory stronger for invokes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50858 91177308-0d34-0410-b5e6-96231b3b80d8
* Check linkage.Devang Patel2008-05-081-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50851 91177308-0d34-0410-b5e6-96231b3b80d8
* Get exception handling working again on 64 bitDuncan Sands2008-05-081-1/+2
| | | | | | | | | | | | Darwin. This is a hack of course, but it does at least look at the right thing: gotpcrel means that this is already an offset, so an explicit offset is not needed (and wrong). I think this is good enough for the moment: Anton is working on something better. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50850 91177308-0d34-0410-b5e6-96231b3b80d8
* new testcase.Chris Lattner2008-05-081-0/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50841 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for constant folding the 'offsetof' pattern even if theChris Lattner2008-05-081-16/+23
| | | | | | | base is not zero. This fixes test/C++Frontend/2008-05-07-CrazyOffsetOf.cpp git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50840 91177308-0d34-0410-b5e6-96231b3b80d8
* Handle vector move / load which zero the destination register top bits (i.e. ↵Evan Cheng2008-05-089-147/+175
| | | | | | movd, movq, movss (addr), movsd (addr)) with X86 specific dag combine. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50838 91177308-0d34-0410-b5e6-96231b3b80d8
* Add nounwind.Evan Cheng2008-05-0725-58/+39
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50837 91177308-0d34-0410-b5e6-96231b3b80d8
* Turn StripPointerCast() into a methodAnton Korobeynikov2008-05-079-45/+42
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50836 91177308-0d34-0410-b5e6-96231b3b80d8
* Use Doxygen-style comments.Mikhail Glushenkov2008-05-078-110/+145
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50833 91177308-0d34-0410-b5e6-96231b3b80d8
* Make the interface of CStrInCStrNoCase be the same as strcasestr.Ted Kremenek2008-05-071-6/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50828 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a new LibCallAliasAnalysis pass, which is parameterizedChris Lattner2008-05-073-0/+179
| | | | | | | | | | | by an instance of LibCallInfo to provide mod/ref info of standard library functions. This is powerful enough to say that 'sqrt' is readonly except that it modifies errno, or that "printf doesn't store to memory unless the %n constraint is present" etc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50827 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix some serious logical errors in CStrInCStrNoCase pointed out by Bill.Ted Kremenek2008-05-071-5/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50826 91177308-0d34-0410-b5e6-96231b3b80d8
* Output correct exception handling and frame infoDuncan Sands2008-05-074-61/+49
| | | | | | | | | | | | | | | | | | | on x86-64 linux. This causes no regressions on 32 bit linux and 32 bit ppc. More tests pass on 64 bit ppc with no regressions. I didn't turn on eh on 64 bit linux because the intrinsics needed to compile the eh runtime aren't done yet. But if you turn it on and link with the mainline runtime then eh seems to work fine on x86-64 linux with this patch. Thanks to Dale for testing. The main point of the patch is that if you output that some object is encoded using 4 bytes you had better not output 8 bytes for it: the patch makes everything consistent. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50825 91177308-0d34-0410-b5e6-96231b3b80d8
* Guard for empty strings in CStrInCStrNoCase.Ted Kremenek2008-05-071-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50823 91177308-0d34-0410-b5e6-96231b3b80d8
* Added CStrInCStrNoCase, a portable implementation of strcasestr.Ted Kremenek2008-05-071-0/+24
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50821 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a new interface for describing the behavior of library calls. ThisChris Lattner2008-05-072-0/+231
| | | | | | | | | | Currently is sufficient to describe mod/ref behavior but will hopefully eventually be extended for other purposes. This isn't used by anything yet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50820 91177308-0d34-0410-b5e6-96231b3b80d8
* Typo.Nick Lewycky2008-05-071-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50805 91177308-0d34-0410-b5e6-96231b3b80d8
* Yet another nasty spiller bug.Evan Cheng2008-05-072-14/+56
| | | | | | | | | | | %ecx = op store %cl<kill>, (addr) (addr) = op %al It's not safe to unfold the last operand and eliminate store even though %cl is marked kill. It's a sub-register use which means one of its super-register(s) may be used below. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50794 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a bug in the ComputeMaskedBits logic for multiply.Dan Gohman2008-05-073-4/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50793 91177308-0d34-0410-b5e6-96231b3b80d8
* Make the use of the "noinline" attribute conditional on using GCC.Bill Wendling2008-05-071-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50789 91177308-0d34-0410-b5e6-96231b3b80d8
* Disable loop deletion until the release branch.Owen Anderson2008-05-061-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50787 91177308-0d34-0410-b5e6-96231b3b80d8
* Removing.Bill Wendling2008-05-061-25/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50786 91177308-0d34-0410-b5e6-96231b3b80d8
* Workaround for a compiler bug (see <rdar://problem/5852746>). Once that bug isBill Wendling2008-05-061-1/+3
| | | | | | | fixed, revert this patch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50782 91177308-0d34-0410-b5e6-96231b3b80d8
* Update a couple VC++ project files.Steve Naroff2008-05-062-1/+31
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50780 91177308-0d34-0410-b5e6-96231b3b80d8
* Use target triple in tests, not 'realign-stack=0' option. Per request.Anton Korobeynikov2008-05-064-5/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50778 91177308-0d34-0410-b5e6-96231b3b80d8
* If weak GlobalVariable was bitcast'ed to different type during linkingAnton Korobeynikov2008-05-061-1/+1
| | | | | | | we will need to strip all casts for intializer lookup. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50776 91177308-0d34-0410-b5e6-96231b3b80d8