aboutsummaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2007-11-07Implemented serialization of signed integers.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43828 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-07Simplify my (il)logic.Evan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43819 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-07Add some more of StrongPHIElim.Owen Anderson
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43805 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-07Interchange Dwarf numbers of ESP and EBP on x86 Darwin.Dale Johannesen
Much improvement in exception handling. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43794 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06Serializer no longer automatically emits a root-level block in the bitstream.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43784 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06Augmented ReadPtr and ReadOwnedPtr to control whether or not a pointer is ↵Ted Kremenek
allowed to be backpatched or can be registered with the deserializer to backpatch other pointers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43783 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06make smallptrset more const and type correct, which caught a fewChris Lattner
minor bugs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43782 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06Remainder operations must be either integer or floating-point.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43781 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06fix const correctness, BB is const, so its predecessors are tooChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43780 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06don't put erase or query for non-allocainst pointers in an set of allocainsts*'sChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43779 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06Implement PR1777 by detecting dependent phis thatChris Lattner
all compute the same value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43777 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06When the allocator rewrite a spill register with new virtual register, it ↵Evan Cheng
replaces other operands of the same register. Watch out for situations where only some of the operands are sub-register uses. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43776 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06At the point of calculating the shift amount, theDuncan Sands
type of SV has changed from what it originally was. However we need the store width of the original. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43775 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06Renamed "Flush()" to "FlushRecord()".Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43772 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06Added support for processing abbreviations in the Deserializer.Ted Kremenek
Added some #ifdef-controlled messages for debugging backpatching. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43771 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06First step towards moving the coalescer to priority_queue based machinery.Evan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43764 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06Fix a bug where a def use operand isn't being detected as a sub-register use.Evan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43763 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06Add pseudo dependency to force two-address instruction to be scheduled afterEvan Cheng
other uses. There was a overly restricted check that prevented some obvious cases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43762 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06Fix PR1774 and BasicAA/2007-11-05-SizeCrash.llChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43756 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06Add a few comments.Owen Anderson
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43755 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06DomForest is a forest of registers, not instructions.Owen Anderson
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43754 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06StrongPHIElimination requires LiveVariables.Owen Anderson
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43751 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06Better processor definitionBruno Cardoso Lopes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43749 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06wrap long linesChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43745 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05Add support for vector remainder operations.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43744 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05Fix an abort in instcombine when folding creates a vector rem instruction.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43743 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05Move the LowerMEMCPY and LowerMEMCPYCall to a common place.Rafael Espindola
Thanks for the suggestions Bill :-) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43742 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05Added support in serializer and deserializer to create arbitrary blocks.Ted Kremenek
Added detection of end-of-stream in deserializer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43736 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05Make labels work in asm blocks; allow labels asDale Johannesen
parameters. Rename ValueRefList to ParamList in AsmParser, since its only use is for parameters. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43734 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05Added default creation of root-level block by bitstream serializer.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43732 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05If a value is incoming from outside the loop then the value does not need ↵Devang Patel
remapping and the value is never tracked through LastValueMap. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43728 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05[ARM] Fix code generation for:Lauro Ramos Venancio
static __thread struct { int a; int b; } teste = {0, 0}; git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43722 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05Don't output ABI size padding twice. By using the storeDuncan Sands
size for the field we get ABI padding automatically, so no need to put it in again when we emit the field. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43720 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05Move SimpleRegisterCoalescing.h to lib/CodeGen since there is now a commonEvan Cheng
register coalescer interface: RegisterCoalescing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43714 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05Use movups to spill / restore SSE registers on targets where stacks alignment isEvan Cheng
less than 16. This is a temporary solution until dynamic stack alignment is implemented. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43703 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05Skip over deleted val#'s.Evan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43700 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05Handle cases where a register and one of its super-register are both marked asEvan Cheng
defined on the same instruction. This fixes PR1767. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43699 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05Added support for PIC code with "explicit relocations" *only*.Bruno Cardoso Lopes
Removed all macro code for PIC (goodbye "la"). Support tested with shootout bench. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43697 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05Deleting redundant copy of block extractor pass. See also PR1775.Gordon Henriksen
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43694 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05Fix PR1187.Evan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43692 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05If a long double is in a packed struct, it may beDuncan Sands
that there is no padding. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43691 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05Eliminate the remaining uses of getTypeSize. ThisDuncan Sands
should only effect x86 when using long double. Now 12/16 bytes are output for long double globals (the exact amount depends on the alignment). This brings globals in line with the rest of LLVM: the space reserved for an object is now always the ABI size. One tricky point is that only 10 bytes should be output for long double if it is a field in a packed struct, which is the reason for the additional argument to EmitGlobalConstant. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43688 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-04Another step of stronger PHI elimination down.Owen Anderson
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43684 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-04Deleting -emitbitcode option which did nothing.Gordon Henriksen
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43683 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-04Fix PR1761 by not printing (rip) suffix when in -static mode.Chris Lattner
Evan, please review this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43680 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-04Fix crash before main on ppc/linux with static constructors. PR1771Nick Lewycky
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43676 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-04Finishing initial docs for all transformations in Passes.html.Gordon Henriksen
Also cleaned up some comments in source files. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43674 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-04Change uses of getTypeSize to getABITypeSize, getTypeStoreSizeDuncan Sands
or getTypeSizeInBits as appropriate in ScalarReplAggregates. The right change to make was not always obvious, so it would be good to have an sroa guru review this. While there I noticed some bugs, and fixed them: (1) arrays of x86 long double have holes due to alignment padding, but this wasn't being spotted by HasStructPadding (renamed to HasPadding). The same goes for arrays of oddly sized ints. Vectors also suffer from this, in fact the problem for vectors is much worse because basic vector assumptions seem to be broken by vectors of type with alignment padding. I didn't try to fix any of these vector problems. (2) The code for extracting smaller integers from larger ones (in the "int union" case) was wrong on big-endian machines for integers with size not a multiple of 8, like i1. Probably this is impossible to hit via llvm-gcc, but I fixed it anyway while there and added a testcase. I also got rid of some trailing whitespace and changed a function name which had an obvious typo in it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43672 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-04If an interval is being undone clear its preference as well since the source ↵Evan Cheng
interval may have been undone as well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43670 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-04Fix PR1763 by allowing the 'q' constraint to work with 64-bitChris Lattner
regs on x86-64. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43669 91177308-0d34-0410-b5e6-96231b3b80d8