- May 17, 2011
-
-
Dan Gohman authored
llvm-svn: 131430
-
Dan Gohman authored
llvm-svn: 131429
-
Dan Gohman authored
llvm-svn: 131428
-
- May 16, 2011
-
-
Jim Grosbach authored
misses. llvm-svn: 131426
-
Devang Patel authored
Radar 9422775. llvm-svn: 131422
-
Eli Friedman authored
llvm-svn: 131420
-
Eli Friedman authored
llvm-svn: 131419
-
Eli Friedman authored
Basic fast-isel of extractvalue. Not too helpful on its own, given the IR clang generates for cases like this, but it should become more useful soon. llvm-svn: 131417
-
Rafael Espindola authored
corrupted when setjmp returns again. llvm-svn: 131399
-
- May 14, 2011
-
-
Eli Friedman authored
Fix a FIXME by moving the fast-isel implementation of the objectsize intrinsic from the x86 code to the generic code. llvm-svn: 131332
-
- May 13, 2011
-
-
Rafael Espindola authored
to fix PR9900. I will keep it open until sable is able to comment on it. llvm-svn: 131294
-
Stuart Hastings authored
simplified version. <rdar://problem/9298790> llvm-svn: 131274
-
Stuart Hastings authored
rdar://problem/9298790 llvm-svn: 131269
-
Stuart Hastings authored
by non-CMP expressions. The executable test case (129821) would test this as well, if we had an "-O0 -disable-arm-fast-isel" LLVM-GCC tester. Alas, the ARM assembly would be very difficult to check with FileCheck. The thumb2-cbnz.ll test is affected; it generates larger code (tst.w vs. cmp #0), but I believe the new version is correct. rdar://problem/9298790 llvm-svn: 131261
-
Evan Cheng authored
llvm-svn: 131258
-
- May 12, 2011
-
-
Devang Patel authored
s/DW_AT_APPLE_objc_class_extension/DW_AT_APPLE_objc_complete_type/g llvm-svn: 131244
-
Evan Cheng authored
Re-enable branchfolding common code hoisting optimization. Fixed a liveness test bug and also taught it to update liveins. llvm-svn: 131241
-
Devang Patel authored
Let Objective-C front-end identify class extension, in dwarf output, using an attribute DW_AT_APPLE_objc_class_extension. llvm-svn: 131238
-
Evan Cheng authored
llvm-svn: 131235
-
Evan Cheng authored
markers. In some cases a register def is dead on one path, but not on another. This is passing Clang self-hosting. llvm-svn: 131214
-
- May 11, 2011
-
-
Devang Patel authored
Identify end of prologue (and beginning of function body) using DW_LNS_set_prologue_end line table opcode. llvm-svn: 131194
-
Jakob Stoklund Olesen authored
about to be spilled. This can only happen when two extra snippet registers are included in the spill, and there is a copy between them. Hoisting the spill creates problems because the hoist will mark the copy for later dead code elimination, and spilling the second register will turn the copy into a spill. <rdar://problem/9420853> llvm-svn: 131192
-
Nadav Rotem authored
Fixes a bug in the DAGCombiner. LoadSDNodes have two values (data, chain). If there is a store after the load node, then there is a chain, which means that there is another user. Thus, asking hasOneUser would fail. Instead we ask hasNUsesOfValue on the 'data' value. llvm-svn: 131183
-
Rafael Espindola authored
to provide a reduced testcase. llvm-svn: 131176
-
Bill Wendling authored
intrinsic call. This prevents it from being reordered so that it appears *before* the setjmp intrinsic (thus making it completely useless). <rdar://problem/9409683> llvm-svn: 131174
-
Evan Cheng authored
at the start of basic blocks to their common predecessor. It's actually quite common (e.g. about 50 times in JM/lencod) and has shown to be a nice code size benefit. e.g. pushq %rax testl %edi, %edi jne LBB0_2 ## BB#1: xorb %al, %al popq %rdx ret LBB0_2: xorb %al, %al callq _foo popq %rdx ret => pushq %rax xorb %al, %al testl %edi, %edi je LBB0_2 ## BB#1: callq _foo LBB0_2: popq %rdx ret rdar://9145558 llvm-svn: 131172
-
- May 10, 2011
-
-
Rafael Espindola authored
llvm-svn: 131157
-
-
Stuart Hastings authored
test case; I've only seen this on a release branch, and I can't get it to reproduce on trunk. rdar://problem/7662569 llvm-svn: 131152
-
Rafael Espindola authored
llvm-svn: 131151
-
Rafael Espindola authored
DwarfRequiresRelocationForSectionOffset as this is not specific to StmtList. llvm-svn: 131148
-
Rafael Espindola authored
this clang will use .debug_frame in, for example, clang -g -c -m32 test.c This matches gcc's behaviour. It looks like .debug_frame is a bit bigger than .eh_frame, but has the big advantage of not being allocated. llvm-svn: 131140
-
Jakob Stoklund Olesen authored
The previous invalidation missed the alias interference caches. Also add a stats counter for the number of repaired ranges. llvm-svn: 131133
-
Devang Patel authored
llvm-svn: 131106
-
- May 09, 2011
-
-
Eric Christopher authored
Patch by Evan Cheng. llvm-svn: 131093
-
Duncan Sands authored
llvm-svn: 131082
-
- May 08, 2011
-
-
Jakob Stoklund Olesen authored
It can happen that a live debug variable is the last use of a sub-register, and the register allocator will pick a larger register class for the virtual register. If the allocated register doesn't support the sub-register index, just use %noreg for the debug variables instead of asserting. In PR9872, a debug variable ends up in the sub_8bit_hi part of a GR32_ABCD register. The register is split and one part is inflated to GR32 and assigned %ESI because there are no more normal uses of sub_8bit_hi. Since %ESI doesn't have that sub-register, substPhysReg asserted. Now it will simply insert a %noreg instead, and the debug variable will be marked unavailable in that range. We don't currently have a way of saying: !"value" is in bits 8-15 of %ESI, I don't know if DWARF even supports that. llvm-svn: 131073
-
- May 06, 2011
-
-
Jakob Stoklund Olesen authored
This can't be just an assertion, users can always write impossible inline assembly. Such an assembly statement should be included in the error message. llvm-svn: 131024
-
Andrew Trick authored
llvm-svn: 131022
-
Evan Cheng authored
llvm-svn: 131015
-