summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* Silence some -Asserts uninitialized variable warnings.Daniel Dunbar2010-07-312-2/+3
| | | | llvm-svn: 109956
* llc: Add -mc-relax-all.Michael J. Spencer2010-07-311-0/+11
| | | | llvm-svn: 109954
* Speculatively revert r108614, "Another attempt at getting the clang self-host toDaniel Dunbar2010-07-312-58/+0
| | | | | | | like my instcombine patch.", in an attempt to fix Clang i386 bootstrap. - Also PR7719. llvm-svn: 109953
* Add const to some methods and change TestMergedProgram to return the mergedRafael Espindola2010-07-313-23/+32
| | | | | | module and take a const BugDriver. llvm-svn: 109951
* doxygenize argument accessorsGabor Greif2010-07-311-0/+10
| | | | llvm-svn: 109950
* MC: Remove HasAbsolutizedSet from WindowsX86AsmBackend.Michael J. Spencer2010-07-311-1/+0
| | | | llvm-svn: 109949
* Move newlines before inline jumptables from the asm strings in .td files toBob Wilson2010-07-314-9/+9
| | | | | | | the jtblock_operand print methods. This avoids extra newlines in the disassembler's output. PR7757. llvm-svn: 109948
* Add relax all support to the COFF object streamer.Michael J. Spencer2010-07-313-4/+8
| | | | llvm-svn: 109947
* Add support for disassembling VMVN (immediate) instructions. PR7747.Bob Wilson2010-07-312-0/+7
| | | | llvm-svn: 109946
* The BlockExtractorPass() constructor was not reading the BlockFile and that wasRafael Espindola2010-07-313-8/+5
| | | | | | | | | | | | | | exactly what bugpoint expected it to do. There was also only one user of BlockExtractorPass(const std::vector<BasicBlock*> &B), so just remove it and make BlockExtractorPass read BlockFile. This fixes bugpoint's block extraction. Nick, please review. llvm-svn: 109936
* Add an initial implementation of PHI translation for LazyValueInfo. This ↵Owen Anderson2010-07-301-35/+72
| | | | | | | | involves rolling back some of my earlier data structure improvements until I can ensure that there are no iterator invalidation problems. llvm-svn: 109935
* Add -disable-shifter-op to disable isel of shifter ops. On Cortex-a9 the ↵Evan Cheng2010-07-301-0/+11
| | | | | | shifts cost extra instructions so it might be better to emit them separately to take advantage of dual-issues. llvm-svn: 109934
* Add a check in the ARM disassembler for NEON instructions that wouldBob Wilson2010-07-301-5/+9
| | | | | | | reference registers past the end of the NEON register file, and report them as invalid instead of asserting when trying to print them. PR7746. llvm-svn: 109933
* Add a "Compare" flag to the target instruction descriptor. This will be usedBill Wendling2010-07-305-1/+11
| | | | | | | later to identify and possibly remove superfluous compare instructions -- those that are testing for and setting a status flag that should already be set. llvm-svn: 109901
* PPC doesn't supported VLA with large alignment. This wasDale Johannesen2010-07-302-2/+4
| | | | | | | | formerly rejected by the FE, so asserted in the BE; now the FE only warns, so we treat it as a legitimate fatal error in PPC BE. This means the test for the feature won't pass, so it's xfail'd. llvm-svn: 109892
* Move MaximumAlignment to be a member of the Value class.Dan Gohman2010-07-303-6/+7
| | | | llvm-svn: 109891
* Revert my last two patches to LVI, which recent changes have exposed a ↵Owen Anderson2010-07-301-56/+94
| | | | | | miscompilation in. llvm-svn: 109889
* Add missing newline to debug statement.Nick Lewycky2010-07-301-1/+1
| | | | llvm-svn: 109886
* LibCallAliasAnalysis uses multiple inheritance, so it needs to implementNick Lewycky2010-07-301-0/+10
| | | | | | getAdjustedAnalysisPointer. Part of a fix to PR7760. llvm-svn: 109883
* A *bunch* of tests for AVX intrinsicsBruno Cardoso Lopes2010-07-302-0/+2006
| | | | llvm-svn: 109881
* Add the __TEXT,__StaticInit section to the list of sections emitted at theBob Wilson2010-07-301-0/+6
| | | | | | | beginning on ARM Darwin assembly files so that it won't be placed after debug sections. Radar 8252813. llvm-svn: 109879
* Support all 128-bit AVX vector intrinsics. Most part of them I alreadyBruno Cardoso Lopes2010-07-303-232/+240
| | | | | | | | | | | declared during the addition of the assembler support, the additional changes are: - Add missing intrinsics - Move all SSE conversion instructions in X86InstInfo64.td to the SSE.td file. - Duplicate some patterns to AVX mode. - Step into PCMPEST/PCMPIST custom inserter and add AVX versions. llvm-svn: 109878
* Fix typo!Bruno Cardoso Lopes2010-07-301-8/+8
| | | | llvm-svn: 109877
* Attempt to fix the llvm-gcc-powerpc-darwin9 buildbot.Bob Wilson2010-07-301-1/+1
| | | | llvm-svn: 109876
* MC: Initialize MCFragment::Offset, noticed by Cameron Esfahani.Daniel Dunbar2010-07-301-1/+2
| | | | llvm-svn: 109875
* Fix -Wmissing-field-initializers warnings.Daniel Dunbar2010-07-301-15/+5
| | | | llvm-svn: 109872
* Grammar cop pullover: Corrected and improved some grammar in the description ofJohn Criswell2010-07-301-6/+6
| | | | | | | the llvm.memset() intrinsic family. No content changes. llvm-svn: 109863
* Add a Program argument to diffProgram to avoid a use of swapProgramIn.Rafael Espindola2010-07-305-22/+32
| | | | llvm-svn: 109859
* Tweak suppressions.Benjamin Kramer2010-07-302-1/+2
| | | | llvm-svn: 109858
* Fix for bug reported by Evzen Muller on llvm-commits: make sure to correctlyEli Friedman2010-07-302-6/+17
| | | | | | | check the range of the constant when optimizing a comparison between a constant and a sign_extend_inreg node. llvm-svn: 109854
* Do not pass a copy of the value map, pass a reference to it.Duncan Sands2010-07-301-1/+1
| | | | llvm-svn: 109852
* Fix the ValueMap copy constructor. The issue is that the map keys are valueDuncan Sands2010-07-302-1/+15
| | | | | | | | | | | | | | | | handles with a pointer to the containing map. When a map is copied, these pointers need to be corrected to point to the new map. If not, then consider the case of a map M1 which maps a value V to something. Create a copy M2 of M1. At this point there are two value handles on V, one representing V as a key in M1, the other representing V as a key in M2. But both value handles point to M1 as the containing map. Now delete V. The value handles remove themselves from their containing map (which destroys them), but only the first value handle is successful: the second one cannot remove itself from M1 as (once the first one has removed itself) there is nothing there to remove; it is therefore not destroyed. This causes an assertion failure "All references to V were not removed?". llvm-svn: 109851
* Many Thumb2 instructions can reference the full ARM register set (i.e.,Jim Grosbach2010-07-309-338/+492
| | | | | | | | | | | | | | | | | | | | | | | | have 4 bits per register in the operand encoding), but have undefined behavior when the operand value is 13 or 15 (SP and PC, respectively). The trivial coalescer in linear scan sometimes will merge a copy from SP into a subsequent instruction which uses the copy, and if that instruction cannot legally reference SP, we get bad code such as: mls r0,r9,r0,sp instead of: mov r2, sp mls r0, r9, r0, r2 This patch adds a new register class for use by Thumb2 that excludes the problematic registers (SP and PC) and is used instead of GPR for those operands which cannot legally reference PC or SP. The trivial coalescer explicitly requires that the register class of the destination for the COPY instruction contain the source register for the COPY to be considered for coalescing. This prevents errant instructions like that above. PR7499 llvm-svn: 109842
* remove a layer of cruftGabor Greif2010-07-291-9/+3
| | | | llvm-svn: 109821
* Fix this up per llvm-gcc r109819.Eric Christopher2010-07-291-1/+1
| | | | llvm-svn: 109820
* Supress valgrind errors from python.Benjamin Kramer2010-07-292-0/+55
| | | | llvm-svn: 109818
* Remove the temporary hack, now that the llvm-i686-linux buildbot hasBob Wilson2010-07-291-1/+0
| | | | | | completed a successful build. llvm-svn: 109815
* Add builtins for ssat/usat, similar to RealView's __ssat and __usat intrinsics.Nate Begeman2010-07-293-0/+10
| | | | llvm-svn: 109813
* Fix the temporary hack.Bob Wilson2010-07-291-1/+2
| | | | llvm-svn: 109810
* Temporary hack to ensure stale Analysis dir is cleaned up on llvm-i686-linux.Daniel Dunbar2010-07-291-1/+1
| | | | llvm-svn: 109809
* Remove XFAIL, test doesn't leak anymore.Benjamin Kramer2010-07-291-1/+0
| | | | llvm-svn: 109801
* Refactor ARM-specific DAG combining in preparation for adding some moreBob Wilson2010-07-291-12/+25
| | | | | | transformations. llvm-svn: 109800
* Implement vector constants which are splat ofDale Johannesen2010-07-292-8/+100
| | | | | | | | | integers with mov + vdup. 8003375. This is currently disabled by default because LICM will not hoist a VDUP, so it pessimizes the code if the construct occurs inside a loop (8248029). llvm-svn: 109799
* Don't assert on an unrecognized BrMiscFrm instruction.Bob Wilson2010-07-291-1/+0
| | | | | | PR7745. llvm-svn: 109788
* Transcribe IRC to svn. Also don't print basic block names twice if they match.John McCall2010-07-291-9/+19
| | | | llvm-svn: 109787
* Grammar.Eric Christopher2010-07-291-2/+2
| | | | llvm-svn: 109775
* Make the header self-contained and follow #include guidelines.John McCall2010-07-293-43/+52
| | | | llvm-svn: 109774
* PR7750: !CExpr->isNullValue() only properly computes whether CExpr is nonnullEli Friedman2010-07-291-1/+1
| | | | | | if CExpr is a ConstantInt. llvm-svn: 109773
* Make un-named values legible in certain vim configurations.Owen Anderson2010-07-291-2/+2
| | | | llvm-svn: 109772
* Add intrinsics __builtin_arm_qadd & __builtin_arm_qsub to allow access to ↵Nate Begeman2010-07-293-9/+25
| | | | | | | | the QADD & QSUB instructions. Behave identically to __qadd & __qsub RealView instruction intrinsics. llvm-svn: 109770
OpenPOWER on IntegriCloud