summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Check RequiresNullTerminator first, or we might read from an invalid address.Rafael Espindola2011-03-181-1/+1
| | | | llvm-svn: 127853
* Add a target-specific branchless method for double-width relationalEli Friedman2011-03-183-16/+103
| | | | | | | | | | | comparisons on x86. Essentially, the way this works is that SUB+SBB sets the relevant flags the same way a double-width CMP would. This is a substantial improvement over the generic lowering in LLVM. The output is also shorter than the gcc-generated output; I haven't done any detailed benchmarking, though. llvm-svn: 127852
* Use CrashRecoveryContextCleanup objects to recover an ASTUnit if we crash in ↵Ted Kremenek2011-03-181-0/+18
| | | | | | ASTUnit::LoadFromCommandLine() and ASTUnit::LoadFromCompilerInvocation(). llvm-svn: 127851
* Use CrashRecoveryContextCleanup objects to release resources associated with ↵Ted Kremenek2011-03-181-0/+7
| | | | | | Sema during a crash while parsing. llvm-svn: 127850
* Augment CrashRecoveryContext to have registered "cleanup" objects that can ↵Ted Kremenek2011-03-182-1/+103
| | | | | | be used to release resources during a crash. llvm-svn: 127849
* Convert alignment values to CharUnits. No change in functionality intended.Ken Dyck2011-03-181-18/+18
| | | | llvm-svn: 127848
* Add some svn:ignore properties.Eli Friedman2011-03-180-0/+0
| | | | llvm-svn: 127847
* Convert getSizeInBytes() to getSizeInChars(), which returns its result inKen Dyck2011-03-181-9/+10
| | | | | | CharUnits. No change in functionality intended. llvm-svn: 127846
* FileCheck-ize and update test.Eli Friedman2011-03-181-6/+9
| | | | llvm-svn: 127845
* Convert variables to CharUnits in ConvertStructToPacked(). No change inKen Dyck2011-03-181-12/+12
| | | | | | functionality intended. llvm-svn: 127844
* The disassembler for Thumb was wrongly adding 4 to the computed imm32 offset.Johnny Chen2011-03-182-13/+5
| | | | | | Remove the offending logic and update the test cases. llvm-svn: 127843
* Remove TargetData and ValueTracking includes. I didn't mean for them to ↵Andrew Trick2011-03-181-4/+0
| | | | | | sneak in my last checkin. llvm-svn: 127842
* Relax the constraint on the types of ValueObjects that we'll by default try theJim Ingham2011-03-183-7/+19
| | | | | | ObjC runtime for print object to Pointer AND Integer (from just pointer.) llvm-svn: 127841
* There are two pseudos in this case that are Thumb mode, not one.Owen Anderson2011-03-171-1/+1
| | | | llvm-svn: 127840
* Added isValidRewrite() to check the result of ScalarEvolutionExpander.Andrew Trick2011-03-173-37/+118
| | | | | | | | | SCEV may generate expressions composed of multiple pointers, which can lead to invalid GEP expansion. Until we can teach SCEV to follow strict pointer rules, make sure no bad GEPs creep into IR. Fixes rdar://problem/9038671. llvm-svn: 127839
* Make all the codee that attempts to read the PC consistently useCaroline Tice2011-03-171-18/+17
| | | | | | | | | ReadCoreReg (which 'does the right thing', adding to pc when needed); fixed places in code where extra addition was being passed along. Fix bug in insn tables. llvm-svn: 127838
* whitespaceAndrew Trick2011-03-171-18/+18
| | | | llvm-svn: 127837
* Driver/Obj-C: Be compatible with GCC behavior in that -fno-exceptions *does not*Daniel Dunbar2011-03-172-19/+29
| | | | | | disable Obj-C exceptions. llvm-svn: 127836
* Use RequiresNullTerminator to create buffers without a null terminatorRafael Espindola2011-03-173-12/+8
| | | | | | instead of copying. llvm-svn: 127835
* Try to not lose variable's debug info during instcombine.Devang Patel2011-03-174-0/+92
| | | | | | | This is done by lowering dbg.declare intrinsic into dbg.value intrinsic. Radar 9143931. llvm-svn: 127834
* It used to be that t_addrmode_s4 was used for both:Johnny Chen2011-03-172-16/+22
| | | | | | | | | | | o A8.6.195 STR (register) -- Encoding T1 o A8.6.193 STR (immediate, Thumb) -- Encoding T1 It has been changed so that now they use different addressing modes and thus different MC representation (Operand Infos). Modify the disassembler to reflect the change, and add relevant tests. llvm-svn: 127833
* Refactor into a separate utility function.Devang Patel2011-03-173-29/+54
| | | | llvm-svn: 127832
* Fix a problem where we were looking up the class pointer in the {class/sel ↵Jim Ingham2011-03-171-28/+113
| | | | | | -> implementation} cache for a objc_msgSendSuper call - where we should have looked up the class's super-class. llvm-svn: 127830
* BuildUDIV: If the divisor is even we can simplify the fixup of the ↵Benjamin Kramer2011-03-172-9/+33
| | | | | | | | | | | | | | | | | | | | | | | multiplied value by introducing an early shift. This allows us to compile "unsigned foo(unsigned x) { return x/28; }" into shrl $2, %edi imulq $613566757, %rdi, %rax shrq $32, %rax ret instead of movl %edi, %eax imulq $613566757, %rax, %rcx shrq $32, %rcx subl %ecx, %eax shrl %eax addl %ecx, %eax shrl $4, %eax on x86_64 llvm-svn: 127829
* Add an argument to APInt's magic udiv calculation to specify the number of ↵Benjamin Kramer2011-03-173-3/+7
| | | | | | | | bits that are known zero in the divided number. This will come in handy soon. llvm-svn: 127828
* Dead code elimination may separate the live interval into multiple connected ↵Jakob Stoklund Olesen2011-03-176-23/+47
| | | | | | | | | components. I have convinced myself that it can only happen when a phi value dies. When it happens, allocate new virtual registers for the components. llvm-svn: 127827
* Get ObjC stepping working again when the process is not the default host ↵Jim Ingham2011-03-175-28/+35
| | | | | | architecture. llvm-svn: 127825
* Reapply: Add type output to llvm-dis annotations. Patch by Yuri!Stuart Hastings2011-03-172-4/+3
| | | | llvm-svn: 127824
* Tidy up the input file given to 'llvm-mc -disassemble' and also append the gdbJohnny Chen2011-03-171-7/+10
| | | | | | assembler code to the memory dump. llvm-svn: 127823
* Fix some issues with include directories: remove a duplicate and putOscar Fuentes2011-03-171-5/+2
| | | | | | Clang binary and source directories first (on that order). llvm-svn: 127822
* Add XCore intrinsic for setpsc.Richard Osborne2011-03-173-1/+15
| | | | llvm-svn: 127821
* Driver/Darwin: These are command line options, not target features.Daniel Dunbar2011-03-172-4/+4
| | | | llvm-svn: 127820
* Driver/Darwin: Suppress spurious warning about -force_cpusubtype_ALL.Daniel Dunbar2011-03-171-1/+2
| | | | llvm-svn: 127819
* Driver/Darwin/ARM: Kernel/kext code has more strict alignment requirements.Daniel Dunbar2011-03-173-11/+34
| | | | llvm-svn: 127815
* Revert 127813 while fixing broken test.Stuart Hastings2011-03-171-1/+1
| | | | llvm-svn: 127814
* Add type output to llvm-dis. Patch by Yuri!Stuart Hastings2011-03-171-1/+1
| | | | llvm-svn: 127813
* MC/Mach-O: Fix regression introduced in r126127, this assignment shouldn't haveDaniel Dunbar2011-03-172-1/+9
| | | | | | been removed. llvm-svn: 127812
* Fix PR9488: 'auto' type substitution can fail (for instance, if it creates a ↵Richard Smith2011-03-176-14/+41
| | | | | | | | reference-to-void type). Don't crash if it does. Also fix an issue where type source information for the resulting type was being lost. llvm-svn: 127811
* Move more logic into getTypeForExtArgOrReturn.Cameron Zwarich2011-03-174-15/+18
| | | | llvm-svn: 127809
* Change the signext language in LangRef to closer match zeroext.Cameron Zwarich2011-03-171-2/+3
| | | | llvm-svn: 127808
* Rename getTypeForExtendedInteger() to getTypeForExtArgOrReturn().Cameron Zwarich2011-03-174-6/+6
| | | | llvm-svn: 127807
* Remove code that was intentionally generating bad code on the GNU runtime ↵David Chisnall2011-03-171-1/+1
| | | | | | for no reason (failing to emit .cxx_constructor / .cxx_destructor methods). llvm-svn: 127806
* Fix test to test the right thing.Ted Kremenek2011-03-171-4/+4
| | | | llvm-svn: 127803
* Don't construct two CFGs just to run -Wuninitialized. While this causes new ↵Ted Kremenek2011-03-172-18/+24
| | | | | | | | warnings to be flagged under -Wconditional-uninitialized, this is something we can improve over time. llvm-svn: 127802
* Add comments for the demanglings. Correct mangled form of operator delete!Nick Lewycky2011-03-171-4/+6
| | | | llvm-svn: 127801
* test/CodeGen/X86/h-registers-1.ll: Add explicit -mtriple=x86_64-linux. It ↵NAKAMURA Takumi2011-03-171-1/+1
| | | | | | does not need to be checked on x86_64-win32 (aka Win64). llvm-svn: 127800
* Make test more portable.Ted Kremenek2011-03-171-2/+5
| | | | llvm-svn: 127799
* Teach VariadicMethodTypeChecker about pointers attributed as 'NSObject'.Ted Kremenek2011-03-172-4/+11
| | | | llvm-svn: 127798
* Teach VariadicMethodTypeChecker that CF references are valid arguments to ↵Ted Kremenek2011-03-172-1/+8
| | | | | | variadic Objective-C methods. llvm-svn: 127797
* Tweak RegionStore's handling of lazy compound values to use the 'Default' ↵Ted Kremenek2011-03-172-16/+50
| | | | | | | | versus 'Direct' binding key, thus allowing specific elements of an array/struct to be overwritten without invalidating the entire binding. Fixes PR 9455. llvm-svn: 127796
OpenPOWER on IntegriCloud