aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* This test dates from the time when llvm-gcc had problems if two types wereDuncan Sands2010-12-021-12/+0
| | | | | | | | | | | | named the same, so it had to qualify type names according to the enclosing scope to ensure uniqueness. This is no longer needed for correctness (though it may be helpful when reading the IR), so this test has lost its importance. Zap it because dragonegg will never be able to produce the qualified type name since modern gcc zaps language specific info (such as whether a type is nested inside another - needed to get X::Y here) before dragonegg is reached. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120721 91177308-0d34-0410-b5e6-96231b3b80d8
* Update LiveDebugVariables during coalescing.Jakob Stoklund Olesen2010-12-023-0/+56
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120720 91177308-0d34-0410-b5e6-96231b3b80d8
* When expanding the MOVCCi32imm, make sure to use the ARM movt/movw opcodes,Jim Grosbach2010-12-021-4/+5
| | | | | | not thumb2. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120711 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix copy/pasto in vmin.f32 encoding.Jim Grosbach2010-12-021-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120709 91177308-0d34-0410-b5e6-96231b3b80d8
* Teaching MBlaze backend how to reverse branch conditions.Wesley Peck2010-12-022-0/+35
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120707 91177308-0d34-0410-b5e6-96231b3b80d8
* test/Archive/extract.ll: Use cmp instead of diff. Thanks to Danil Malyshev!NAKAMURA Takumi2010-12-021-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120698 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a fast path to EvaluateSymbolicAdd. This avoids computing symbol addressesRafael Espindola2010-12-021-3/+11
| | | | | | | | which then avoids running EnsureValid. This cuts the assembly time of the testcase in PR8711 from 2:50 minutes to 1 minute. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120697 91177308-0d34-0410-b5e6-96231b3b80d8
* Simplify code in Neon intrinsics. No functional changes intended.Bob Wilson2010-12-021-43/+37
| | | | | | | For most intrinsics, there is no need to allocate a temporary to hold the result value; just return it directly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120695 91177308-0d34-0410-b5e6-96231b3b80d8
* Assign arguments of Neon intrinsic macros to local temporaries.Bob Wilson2010-12-021-4/+31
| | | | | | | | Since we're casting them for the calls to the builtins, we need this to make sure their types get checked in the same way they would if the intrinsics were implemented as inline functions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120693 91177308-0d34-0410-b5e6-96231b3b80d8
* Move EmitValueToOffset to the ObjectStreamer.Rafael Espindola2010-12-025-22/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120691 91177308-0d34-0410-b5e6-96231b3b80d8
* Add EmitInstToFragment to the generic object streamer.Rafael Espindola2010-12-024-35/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120690 91177308-0d34-0410-b5e6-96231b3b80d8
* Add naming rules to the coding standards.Zhanyong Wan2010-12-021-0/+67
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120689 91177308-0d34-0410-b5e6-96231b3b80d8
* The sections that the ELF object writer has to create are very simple andRafael Espindola2010-12-023-43/+50
| | | | | | | | contain only data. Handle them specially instead of using AddSectionToTheEnd. This moves a hack from the generic assembler to the elf writer. It is also a bit faster and should make other improvements easier. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120683 91177308-0d34-0410-b5e6-96231b3b80d8
* Use statement expressions in Neon intrinsics defined as macros.Bob Wilson2010-12-021-9/+8
| | | | | | | This is in preparation for adding assignments to temporaries to ensure that the proper type checking is done. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120649 91177308-0d34-0410-b5e6-96231b3b80d8
* tidy upChris Lattner2010-12-021-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120644 91177308-0d34-0410-b5e6-96231b3b80d8
* Add casts for splatted scalars in calls to Neon builtins.Bob Wilson2010-12-021-5/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120641 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a missing cast for Neon vsbl results.Bob Wilson2010-12-021-2/+3
| | | | | | | The bitwise operations are always done with unsigned values, but the result may be signed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120640 91177308-0d34-0410-b5e6-96231b3b80d8
* Add another missing cast for Neon vcombine results.Bob Wilson2010-12-021-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120639 91177308-0d34-0410-b5e6-96231b3b80d8
* Add casts in arm_neon.h for result values in inline functions as well as macros.Bob Wilson2010-12-021-1/+1
| | | | | | We should not rely on lax-vector-conversions for these intrinsics to work. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120638 91177308-0d34-0410-b5e6-96231b3b80d8
* If tehre are not any line entry then do not try to emit .debug_line section.Devang Patel2010-12-022-1/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120637 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement the first half of LiveDebugVariables.Jakob Stoklund Olesen2010-12-025-5/+528
| | | | | | | | | | | | | | | | | | | Scan the MachineFunction for DBG_VALUE instructions, and replace them with a data structure similar to LiveIntervals. The live range of a DBG_VALUE is determined by propagating it down the dominator tree until a new DBG_VALUE is found. When a DBG_VALUE lives in a register, its live range is confined to the live range of the register's value. LiveDebugVariables runs before coalescing, so DBG_VALUEs are not artificially extended when registers are joined. The missing half will recreate DBG_VALUE instructions from the intervals when register allocation is complete. The pass is disabled by default. It can be enabled with the temporary command line option -live-debug-variables. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120636 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for binary encoding of ARM 'adr' instructions referencing constantJim Grosbach2010-12-027-41/+65
| | | | | | pool entries (LEApcrel pseudo). Ongoing saga of rdar://8542291. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120635 91177308-0d34-0410-b5e6-96231b3b80d8
* Avoid "char" for Neon vector elements; make it explicitly signed (or unsigned).Bob Wilson2010-12-021-5/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120632 91177308-0d34-0410-b5e6-96231b3b80d8
* Cast scalar results of Neon macros to the correct type.Bob Wilson2010-12-021-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120631 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert r120580.Devang Patel2010-12-021-14/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120630 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix and re-enable tail call optimization of expanded libcalls.Evan Cheng2010-12-013-25/+35
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120622 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove unused argument.Rafael Espindola2010-12-012-4/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120621 91177308-0d34-0410-b5e6-96231b3b80d8
* fixing style nit: move class static to global staticJason W Kim2010-12-011-42/+41
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120619 91177308-0d34-0410-b5e6-96231b3b80d8
* Make valgrind happy.Michael J. Spencer2010-12-011-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120616 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a post encoder method to the VFP instructions to convert them to the Thumb2Bill Wendling2010-12-013-4/+22
| | | | | | | encoding if we're in that mode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120608 91177308-0d34-0410-b5e6-96231b3b80d8
* Use the correct fixup type for ARM VLDR*Jim Grosbach2010-12-011-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120604 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename temporary symbols if they conflict with artificial symbols createdRafael Espindola2010-12-013-10/+52
| | | | | | | | | by the assembler. This was blocking parsing any large .s produced by clang for example. Fixes PR8596. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120603 91177308-0d34-0410-b5e6-96231b3b80d8
* Support/FileSystem: Fix copy_file implementation to use ↵Michael J. Spencer2010-12-012-4/+4
| | | | | | | | toNullTerminatedStringRef instead of toStringRef. The file system APIs need c strings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120601 91177308-0d34-0410-b5e6-96231b3b80d8
* Support/ADT/Twine: Add toNullTerminatedStringRef.Michael J. Spencer2010-12-013-0/+28
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120600 91177308-0d34-0410-b5e6-96231b3b80d8
* Add explicit casts for vector arguments to Neon builtins.Bob Wilson2010-12-011-5/+31
| | | | | | This avoids warnings with -Wvector-conversions. Radar 8228022. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120597 91177308-0d34-0410-b5e6-96231b3b80d8
* Add some comments for TableGen's NeonEmitter.Bob Wilson2010-12-012-11/+16
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120596 91177308-0d34-0410-b5e6-96231b3b80d8
* Cleanup: simplify checks for integers between 2 and 4.Bob Wilson2010-12-011-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120595 91177308-0d34-0410-b5e6-96231b3b80d8
* Refactor LEApcrelJT as a pseudo-instructionlowered to a cannonical ADRJim Grosbach2010-12-015-16/+73
| | | | | | | instruction at MC lowering. Add binary encoding information for the ADR, including fixup data for the label operand. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120594 91177308-0d34-0410-b5e6-96231b3b80d8
* Support/FileSystem: Add copy_file implementation. Not tests yet because theMichael J. Spencer2010-12-013-3/+157
| | | | | | file creation APIs aren't implemented. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120593 91177308-0d34-0410-b5e6-96231b3b80d8
* Support/PathV2: Split PathV2.h into PathV2.h and FileSystem.h.Michael J. Spencer2010-12-012-593/+628
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120592 91177308-0d34-0410-b5e6-96231b3b80d8
* unittests/Support/PathV2: Fix -pedantic warning.Michael J. Spencer2010-12-011-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120590 91177308-0d34-0410-b5e6-96231b3b80d8
* Add correct encodings for STRD and LDRD, including fixup support. ↵Owen Anderson2010-12-0110-36/+78
| | | | | | Additionally, update these to unified syntax. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120589 91177308-0d34-0410-b5e6-96231b3b80d8
* kill trailing spaceJason W Kim2010-12-011-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120586 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a mised reloc rename spot.Jim Grosbach2010-12-011-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120585 91177308-0d34-0410-b5e6-96231b3b80d8
* 10 bits, not 12.Jim Grosbach2010-12-013-6/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120584 91177308-0d34-0410-b5e6-96231b3b80d8
* Disable debug info for x86-darwin9 and earlier until PR 8715 and radar ↵Devang Patel2010-12-011-0/+14
| | | | | | 8709290 are fixed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120580 91177308-0d34-0410-b5e6-96231b3b80d8
* Add hiddent command line option, as an debugging aid, to disable .loc use.Devang Patel2010-12-011-0/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120575 91177308-0d34-0410-b5e6-96231b3b80d8
* I don't think it makes any sense to assert that the target supports SSE3 here.Duncan Sands2010-12-011-4/+0
| | | | | | | | | | | The user (i.e. whoever generated a call to the intrinsic in the first place) is essentially asking for a particular instruction to be placed in the assembler. If that instruction won't execute on the target machine, that's their problem not ours. Two buildbots with processors that don't support SSE3 were barfing on the apm.ll test in CodeGen/X86 because of this assertion. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120574 91177308-0d34-0410-b5e6-96231b3b80d8
* ptx: bug fix: use after freeChe-Liang Chiou2010-12-011-7/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120571 91177308-0d34-0410-b5e6-96231b3b80d8
* PR5207: Rename overloaded APInt methods set(), clear(), flip() toJay Foad2010-12-0111-66/+66
| | | | | | setAllBits(), setBit(unsigned), etc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120564 91177308-0d34-0410-b5e6-96231b3b80d8