summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* A bit of clean up.Johnny Chen2011-05-193-113/+9
| | | | | | | | Removed ifdeffed out functions and added the implementation of WriteRegister for x86_64 architecture. Signed-off-by: Johnny Chen <johnny.chen@apple.com> llvm-svn: 131696
* API fix and missing headers.Johnny Chen2011-05-193-1/+13
| | | | | | | | | | | | | | Host.cpp was missing Error.h and the implementation of LaunchProcess. Once againg I have added a "fake" implementation waiting for a real one. Fixed the call GetAddressRange to reflect the new interface in DynamicLoaderLinuxDYLD.cpp. Added string.h to ARM_DWARF_Registers.cpp that is needed for ::memset. Signed-off-by: Johnny Chen <johnny.chen@apple.com> llvm-svn: 131695
* testingHoward Hinnant2011-05-191-1/+1
| | | | llvm-svn: 131694
* testingHoward Hinnant2011-05-191-1/+1
| | | | llvm-svn: 131693
* Revert r131672 until __underlying_type is properly implemented in theAlexis Hunt2011-05-192-5/+0
| | | | | | template case. llvm-svn: 131692
* Fix test on Windows.Eli Friedman2011-05-191-1/+1
| | | | llvm-svn: 131691
* Add fast-isel support for zeroext and signext ret instructions on x86.Eli Friedman2011-05-192-5/+63
| | | | llvm-svn: 131689
* Looks like OS X assemblers (including MC) don't likeRafael Espindola2011-05-192-1/+25
| | | | | | | | | | foo: bar = foo .quad bar Avoid producing it. Fixes PR9951. llvm-svn: 131687
* Add Mac OS X as supported platform.Howard Hinnant2011-05-191-1/+1
| | | | llvm-svn: 131686
* Add Mac OS X as supported platform.Howard Hinnant2011-05-191-0/+1
| | | | llvm-svn: 131685
* Fix trailing commas at the end of enumerator lists.Charles Davis2011-05-192-2/+2
| | | | | | Seriously, I have no idea how you guys managed to build LLDB before. llvm-svn: 131684
* Misc code refactorings:Rafael Espindola2011-05-194-21/+14
| | | | | | | * Remove unnecessary arguments now that ForceExpAbs is a method. * Use ForceExpAbs in EmitAbsValue. llvm-svn: 131683
* Oddly people want to use the 'r' constraint for fp constants on x86.Eric Christopher2011-05-192-1/+13
| | | | | | | Fixes rdar://9218925 Fixes PR9601 llvm-svn: 131682
* Add radar info.Johnny Chen2011-05-191-0/+1
| | | | llvm-svn: 131681
* Add TestCallStdStringFunction.py which calls std::string member functions ↵Johnny Chen2011-05-193-0/+78
| | | | | | while stopped on a breakpoint. llvm-svn: 131680
* Implement the EndProlog Win64 EH method on the base MCStreamer.Charles Davis2011-05-192-5/+7
| | | | llvm-svn: 131679
* Fix PR9947 by placing OPFL_MemRefs on the node using memory operands rather thanCameron Zwarich2011-05-191-14/+48
| | | | | | | the root if there is only one such node. This leaves only 2 verifier failures in the entire test suite when running "make check". llvm-svn: 131677
* Fix up this test to use explicit triples (Win64 passes a different number of ↵Eli Friedman2011-05-191-13/+26
| | | | | | arguments in registers). llvm-svn: 131676
* This fixes one divergence between LLVM and binutils for ARM in theJason W Kim2011-05-192-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | text section. Assume the following bit of annotated assembly: .section .data.rel.ro,"aw",%progbits .align 2 .LAlpha: .long startval(GOTOFF) .text .align 2 .type main,%function .align 4 main: ;;; assume "main" starts at offset 0x20 0x0 push {r11, lr} 0x4 movw r0, :lower16:(.LAlpha-(.LBeta+8)) ;;; ==> (.AddrOf(.LAlpha) - ((.AddrOf(.LBeta) - .AddrOf(".")) + 8) ;;; ==> (??? - ((16-4) + 8) = -20 0x8 movt r0, :upper16:(.LAlpha-(.LBeta+8)) ;;; ==> (.AddrOf(.LAlpha) - ((.AddrOf(.LBeta) - .AddrOf(".")) + 8) ;;; ==> (??? - ((16-8) + 8) = -16 0xc ... blah .LBeta: 0x10 add r0, pc, r0 0x14 ... blah .LGamma: 0x18 add r1, pc, r1 Above snippet results in the following relocs in the .o file for the first pair of movw/movt instructions 00000024 R_ARM_MOVW_PREL_NC .LAlpha 00000028 R_ARM_MOVT_PREL .LAlpha And the encoded instructions in the .o file for main: must be 00000020 <main>: 20: e92d4800 push {fp, lr} 24: e30f0fec movw r0, #65516 ; 0xffec i.e. -20 28: e34f0ff0 movt r0, #65520 ; 0xfff0 i.e. -16 However, llc (prior to this commit) generates the following sequence 00000020 <main>: 20: e92d4800 push {fp, lr} 24: e30f0fec movw r0, #65516 ; 0xffec - i.e. -20 28: e34f0fff movt r0, #65535 ; 0xffff - i.e. -1 What has to happen in the ArmAsmBackend is that if the relocation is PC relative, the 16 bits encoded as part of movw and movt must be both addends, not addresses. It makes sense to encode addresses by right shifting the value by 16, but the result is incorrect for PIC. i.e., the right shift by 16 for movt is ONLY valid for the NON-PCRel case. This change agrees with what GNU as does, and makes the PIC code run. MC/ARM/elf-movt.s covers this case. llvm-svn: 131674
* Reapply r131605. This time with a fix, which is to use NoFolder.Devang Patel2011-05-191-30/+34
| | | | llvm-svn: 131673
* Implement a __has_feature for __underlying_typeAlexis Hunt2011-05-192-0/+5
| | | | llvm-svn: 131672
* Correction for r131662, the GNU as option is --fatal-warnings.Joerg Sonnenberger2011-05-192-2/+2
| | | | llvm-svn: 131671
* Add a test for __underlying_typeAlexis Hunt2011-05-191-0/+27
| | | | llvm-svn: 131670
* ADD64ri32 sign extends its argument, so we need to use a R_X86_64_32S.Rafael Espindola2011-05-192-1/+9
| | | | | | | | Fixes PR9934. We really need to start tblgening the relocation info :-( llvm-svn: 131669
* Align i64 arguments to 64 bit boundaries.Akira Hatanaka2011-05-192-1/+41
| | | | llvm-svn: 131668
* Simplied bind using __invoke. In the process, found and fixed a couple of ↵Howard Hinnant2011-05-193-26/+37
| | | | | | bugs. C++11 only. llvm-svn: 131667
* Implement the Win64 EH prolog instruction methods on the base MCStreamer.Charles Davis2011-05-194-45/+57
| | | | | | I had to change the API slightly to avoid overloading issues. llvm-svn: 131666
* Fix up the new StandardPasses to run the same scalarrepl passes as the old one.Eli Friedman2011-05-191-4/+10
| | | | llvm-svn: 131665
* crc32 with 64-bit output zeros upper 32-bits. rdar://9467055Evan Cheng2011-05-192-0/+32
| | | | llvm-svn: 131664
* Update some currently-disabled code, preparing for eventual use.Stuart Hastings2011-05-191-6/+7
| | | | llvm-svn: 131663
* Support -fatal-warnings for the assembler frontendJoerg Sonnenberger2011-05-193-0/+8
| | | | llvm-svn: 131662
* Build and initialise the Darwin ABI plugins on all platformsPeter Collingbourne2011-05-193-7/+8
| | | | llvm-svn: 131661
* Increase number of available registers when target is MIPS32.Akira Hatanaka2011-05-192-3/+11
| | | | llvm-svn: 131660
* Add comment.Evan Cheng2011-05-191-0/+1
| | | | llvm-svn: 131659
* Moved a lot of simple functions from StoppointLocation.cpp to be inlined inGreg Clayton2011-05-195-79/+97
| | | | | | | | | | | | | | | | | | StoppointLocation.h. Added a new lldb_private::Address function: addr_t Address::GetOpcodeLoadAddress (Target *target) const; This will strip any special bits from an address to make sure it is suitable for use in addressing an opcode. Often ARM addresses have an extra bit zero that can be set to indicate ARM vs Thumb addresses (gotten from return address registers, or symbol addresses that may be marked up specially). We need to strip these bits off prior to setting breakpoints, so we can centralized the place to do this inside the Address class. llvm-svn: 131658
* Simplify CC_MipsO32 and merge it with CC_MipsO32_VarArgs. Patch by Sasa ↵Akira Hatanaka2011-05-191-90/+28
| | | | | | Stankovic. llvm-svn: 131657
* clang/darwin: Tweak CheckArches function to use CC and to not spew output.Daniel Dunbar2011-05-191-2/+3
| | | | llvm-svn: 131656
* Reapply 131644 including the missing header changes:Joerg Sonnenberger2011-05-194-10/+18
| | | | | | Introduce -fatal-assembler-warnings for the obvious purpose llvm-svn: 131655
* Reverting 131641 to investigate 'bot complaint.Stuart Hastings2011-05-193-21/+25
| | | | llvm-svn: 131654
* Revert r131644; it's breaking the build.Eli Friedman2011-05-192-14/+8
| | | | llvm-svn: 131653
* Turns out GAS does have Win64 EH directives. (It also supports WinCE EH.) MakeCharles Davis2011-05-194-50/+60
| | | | | | | | | ours compatible with GAS. In retrospect, I should have emailed binutils about this earlier. Thanks to Kai Tietz for pointing out that GAS already had SEH directives. llvm-svn: 131652
* Link to LLVM instrumentation libPeter Collingbourne2011-05-191-1/+1
| | | | llvm-svn: 131651
* Add UnwindAssembly plugins to makefile buildPeter Collingbourne2011-05-194-1/+32
| | | | llvm-svn: 131650
* 80 columns.Jim Grosbach2011-05-191-9/+12
| | | | llvm-svn: 131649
* #include <string.h> for memsetPeter Collingbourne2011-05-191-0/+1
| | | | llvm-svn: 131648
* Remove some old files which should have been removed in r131193Peter Collingbourne2011-05-192-94/+0
| | | | llvm-svn: 131647
* Use the portable memchr function instead of the BSD-only strnstrPeter Collingbourne2011-05-191-2/+2
| | | | llvm-svn: 131646
* Initialise the Darwin ABI plugins only on DarwinPeter Collingbourne2011-05-191-7/+7
| | | | llvm-svn: 131645
* Introduce -fatal-assembler-warnings for the obvious purposeJoerg Sonnenberger2011-05-192-8/+14
| | | | llvm-svn: 131644
* Fix data layout string. i64 is aligned to 64 bit boundaries.Akira Hatanaka2011-05-191-2/+3
| | | | llvm-svn: 131642
OpenPOWER on IntegriCloud