summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
...
* Simplify this code.Dan Gohman2010-03-181-16/+8
| | | | llvm-svn: 98853
* Fix a name clash that was breaking MSVC builds.Benjamin Kramer2010-03-181-1/+1
| | | | llvm-svn: 98852
* Explicitly cast std::min's arguments to avoid type mismatches.Dan Gohman2010-03-181-2/+2
| | | | llvm-svn: 98851
* another oneGabor Greif2010-03-181-1/+1
| | | | llvm-svn: 98850
* Define placement new wrappers for BumpPtrAllocator andDan Gohman2010-03-186-125/+118
| | | | | | | RecyclingAllocator to allow client code to be simpler, and simplify several clients. llvm-svn: 98847
* Make this test more lenient; with SmallVector now using actuallyDan Gohman2010-03-181-1/+1
| | | | | | | aligned storage, the capacity may be more than what is explicitly requested. llvm-svn: 98846
* Fix pr6543: svn r88806 changed MachineJumpTableInfo::getJumpTableIndex() toBob Wilson2010-03-183-7/+19
| | | | | | | | | | | | | | | | | always create a new jump table. The intention was to avoid merging jump tables in SelectionDAGBuilder, and to wait for the branch folding pass to merge tables. Unfortunately, the same getJumpTableIndex() method is also used to merge tables in branch folding, so as a result of this change branch tables are never merged. Worse, the branch folding code is expecting getJumpTableIndex to always return the index of an existing table, but with this change, it never does so. In at least some cases, e.g., pr6543, this creates references to non-existent tables. I've fixed the problem by adding a new createJumpTableIndex function, which will always create a new table, and I've changed getJumpTableIndex to only look at existing tables. llvm-svn: 98845
* Fix a bug found by inspection; in the __GNUC__ code, the alignmentDan Gohman2010-03-181-8/+9
| | | | | | | doesn't apply to the type, only to the variable, so subsequent uses of U which expect it to be aligned weren't actually aligned. llvm-svn: 98843
* Nick wants these alphabetized Andrew Lenharth2010-03-181-1/+1
| | | | llvm-svn: 98840
* add a special relocation type for movq loads for objectChris Lattner2010-03-183-5/+23
| | | | | | | files that produce special relocation types where the linker changes movq's into lea's. llvm-svn: 98839
* Add explicit braces to avoid ambiguous ‘else’.Dan Gohman2010-03-181-1/+2
| | | | llvm-svn: 98838
* callq is pcrelativeChris Lattner2010-03-181-1/+1
| | | | llvm-svn: 98835
* Check if function names start with "llvm." before trying to lookup them up asBob Wilson2010-03-182-0/+8
| | | | | | | | intrinsics. The intrinsic lookup code assumes that this check has been done and assumes the names are at least 6 characters long. Valgrind complained about this. pr6638. llvm-svn: 98831
* Fix comment.Devang Patel2010-03-181-1/+1
| | | | llvm-svn: 98830
* Add the ability to "intern" FoldingSetNodeID data into aDan Gohman2010-03-185-40/+76
| | | | | | | | | | | | BumpPtrAllocator-allocated region to allow it to be stored in a more compact form and to avoid the need for a non-trivial destructor call. Use this new mechanism in ScalarEvolution instead of FastFoldingSetNode to avoid leaking memory in the case where a FoldingSetNodeID uses heap storage, and to reduce overall memory usage. llvm-svn: 98829
* Adding MicroBlaze as an experimental backend in the release notesWesley Peck2010-03-181-2/+2
| | | | llvm-svn: 98824
* CMake: Add options for using static runtime on MSVC++ build.Oscar Fuentes2010-03-181-1/+3
| | | | | | Patch by Victor Zverovich! llvm-svn: 98821
* Add an extra newline to separate PP directives from the contentsKovarththanan Rajaratnam2010-03-181-1/+1
| | | | llvm-svn: 98820
* Try to fix a valgrind error on 32 bit platforms: use %zu instead of %llu to ↵Benjamin Kramer2010-03-181-2/+2
| | | | | | format a size_t. llvm-svn: 98819
* Avoid a problem in libc_freeres() seen on a linux-i686 buildbot when runningJeffrey Yasskin2010-03-182-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | under valgrind: ==19577== Invalid free() / delete / delete[] ==19577== at 0x4C9C866: free (vg_replace_malloc.c:325) ==19577== by 0x5121104: ??? (in /lib/libc-2.10.2.so) ==19577== by 0x4C97412: _vgnU_freeres (vg_preloaded.c:62) ==19577== by 0x5041486: __run_exit_handlers (exit.c:93) ==19577== by 0x50414FE: exit (exit.c:100) ==19577== by 0x5028B5C: (below main) (libc-start.c:254) ==19577== Address 0xffffffff is not stack'd, malloc'd or (recently) free'd ==19577== Apparently this happens under certain versions of glibc, so valgrind provides the --run-libc-freeres=no option to avoid calling freeres(). This may increase the number of "still reachable" blocks valgrind reports, but we don't care about those, while this error breaks the buildbots. There are upstream bugs about this at http://sourceware.org/bugzilla/show_bug.cgi?id=10610 and http://bugs.kde.org/show_bug.cgi?id=167483, but they don't look likely to be fixed. llvm-svn: 98813
* Turning off post-ra scheduling for x86. It isn't a consistent win.Evan Cheng2010-03-186-42/+27
| | | | llvm-svn: 98810
* add a couple blurbs backChris Lattner2010-03-181-3/+1
| | | | llvm-svn: 98809
* Reapply r98755 with a thinko which miscompiled gengtype fixed.Dan Gohman2010-03-183-58/+61
| | | | llvm-svn: 98793
* MCValue: Change to holding MCSymbolRefExprs instead of MCSymbols, we will ↵Daniel Dunbar2010-03-184-45/+53
| | | | | | need this for accessing to symbol modifiers. llvm-svn: 98791
* Add MCSymbol::isInSection.Daniel Dunbar2010-03-181-4/+9
| | | | llvm-svn: 98790
* MC/Darwin: Add a new target hook for whether the target uses "reliable" ↵Daniel Dunbar2010-03-183-9/+31
| | | | | | | | symbol differences, basically whether the assembler should attempt to understand atoms when using scattered symbols. Also, avoid some virtual call overhead. llvm-svn: 98789
* Revert "Change coalescer complexity from N^2 to N logN by changing one letter."Jakob Stoklund Olesen2010-03-181-1/+12
| | | | | | This reverts commit 98776. It broke the llvm-gcc boot strap. llvm-svn: 98784
* X86 address mode matching code MatchAddressRecursively does some aggressive ↵Evan Cheng2010-03-172-14/+99
| | | | | | hack which require doing a RAUW. It may end up deleting some SDNode up stream. It should avoid referencing deleted nodes. llvm-svn: 98780
* Debug info intrinsic does not intefer during tail call optimization.Devang Patel2010-03-171-0/+3
| | | | llvm-svn: 98778
* Revert 98745 with respect to the addition of NEONFrm subformats for disassembly.Johnny Chen2010-03-172-453/+85
| | | | | | There is a better way coming up. llvm-svn: 98777
* Change coalescer complexity from N^2 to N logN by changing one letter.Jakob Stoklund Olesen2010-03-171-12/+1
| | | | | | | | | Remove ugly hack that aborted the coalescer before using N^2 time. This affects functions with very complicated live intervals for physical registers, i.e. functions with thousands of function calls. llvm-svn: 98776
* Fixed a bug in the IT mask printing where T means the cond bit in the maskJohnny Chen2010-03-171-3/+5
| | | | | | | | | | | | | | matches that of Firstcond[0] and E means otherwise. The Firstcond[0] is also tagged in the Mask to facilitate Asm printing. The disassembler also depends on this arrangement. This is similar to what's described in A2.5.2 ITSTATE. Ran: utils/lit/lit.py test/CodeGen/ARM test/CodeGen/Thumb test/CodeGen/Thumb2 successfully. llvm-svn: 98775
* Refines 98745 so that it only contains the patch related to the output of theJohnny Chen2010-03-171-12/+1
| | | | | | | | | addressing modes to omit the '+' from the assembler syntax #+/-<imm> or +/-<Rm>. This patch removes the impl of printT2AddrModeImm8s4OffsetOperand() from ARMAsmPrinter.cpp. It is used by disassembler as of now. llvm-svn: 98774
* Changed install_name for libEnhancedDisassembly.dylib onSean Callanan2010-03-171-1/+2
| | | | | | | Mac OS X to match current install location. This has no effect on other platforms. llvm-svn: 98773
* remove arm mode workaround for ARM hostJim Grosbach2010-03-171-2/+0
| | | | llvm-svn: 98771
* Use llvm-gcc to build ARM when it's availableJim Grosbach2010-03-171-4/+3
| | | | llvm-svn: 98770
* Clean up whitespace.Bob Wilson2010-03-171-16/+12
| | | | llvm-svn: 98769
* Increase format field from 5 to 6 bits. ARMII::FormMask was increased to 0x3fBob Wilson2010-03-171-3/+3
| | | | | | in svn r74988 but the format field was never widened. llvm-svn: 98768
* Initialize Size member to appease valgrind.Benjamin Kramer2010-03-171-1/+1
| | | | llvm-svn: 98763
* Revert 98755, which may be causing trouble.Dan Gohman2010-03-173-61/+58
| | | | llvm-svn: 98762
* feedback from NickGabor Greif2010-03-171-1/+2
| | | | llvm-svn: 98761
* Change SCEVNAryExpr's operand array from a SmallVector to a plainDan Gohman2010-03-173-58/+61
| | | | | | | | | | pointer and length, and allocate the arrays in ScalarEvolution's BumpPtrAllocator, so that they get released when their owning SCEV gets released. SCEVs are immutable, so they don't need to worry about operand array resizing. This fixes a memory leak reported in PR6637. llvm-svn: 98755
* Remove an unnecessary (and misspelled) typedef. Tweak whitespace.Bob Wilson2010-03-171-3/+3
| | | | llvm-svn: 98753
* missing includeAndrew Lenharth2010-03-171-0/+1
| | | | llvm-svn: 98752
* 98745 contains something unrelated to the patch.Johnny Chen2010-03-171-15/+1
| | | | | | Remove it from ARMAddressingModes.h. llvm-svn: 98751
* notes from evanChris Lattner2010-03-171-2/+8
| | | | llvm-svn: 98748
* Added sub-formats to the NeonI/NeonXI instructions to further refine the NEONFrmJohnny Chen2010-03-1720-163/+952
| | | | | | | | | | | | | instructions to help disassembly. We also changed the output of the addressing modes to omit the '+' from the assembler syntax #+/-<imm> or +/-<Rm>. See, for example, A8.6.57/58/60. And modified test cases to not expect '+' in +reg or #+num. For example, ; CHECK: ldr.w r9, [r7, #28] llvm-svn: 98745
* Testcase for r98728.Stuart Hastings2010-03-171-0/+43
| | | | llvm-svn: 98744
* Fix EmitSectionOffset incorrect argument. DwarfDebug is emitting debug info ↵Devang Patel2010-03-171-9/+8
| | | | | | so isEH is always false. This was hiding until now from compilers because of default arguments. This was hiding from dwarf debug info users because for most of the platform isAbsoluteEHSectionOffsets() is same as isAbsoluteDebugSectionOffsets(). But Chris found it while updating dwarf printer to use MC*. llvm-svn: 98743
* several updatesChris Lattner2010-03-171-15/+5
| | | | llvm-svn: 98742
OpenPOWER on IntegriCloud