- Apr 28, 2011
-
-
Devang Patel authored
This fixes clang generated blocks' variables' debug info. Radar 9279956. llvm-svn: 130373
-
Eli Friedman authored
llvm-svn: 130360
-
Justin Holewinski authored
- expansion of SELECT_CC into SETCC - force SETCC result type to i1 - custom selection for handling i1 using SETCC Patch by Dan Bailey llvm-svn: 130358
-
Justin Holewinski authored
- selection of SELP instruction - new selp.ll test Patch by Dan Bailey llvm-svn: 130357
-
Justin Holewinski authored
- fix typo in MOV - correct fp rounding on CVT - new cvt.ll test Patch by Dan Bailey llvm-svn: 130356
-
Justin Holewinski authored
- selection of FNEG instruction - new fneg.ll test Patch by Dan Bailey llvm-svn: 130355
-
Justin Holewinski authored
- expansion of EXTLOAD and TRUNCSTORE instructions Patch by Dan Bailey llvm-svn: 130354
-
Justin Holewinski authored
- selection of bitwise preds (AND, OR, XOR) - new bitwise.ll test Patch by Dan Bailey llvm-svn: 130353
-
Justin Holewinski authored
- immediate value cast as long not int - handles initializer for constant array Patch by Dan Bailey llvm-svn: 130352
-
Andrew Trick authored
llvm-svn: 130350
-
-
Rafael Espindola authored
llvm-svn: 130343
-
Rafael Espindola authored
give it a bit more responsibility. Also implement it for MachO. If hacked to use cfi, 32 bit MachO will produce .cfi_personality 155, L___gxx_personality_v0$non_lazy_ptr and 64 bit will produce .cfi_presonality ___gxx_personality_v0 The general idea is that .cfi_personality gets passed the final symbol. It is up to codegen to produce it if using indirect representation (like 32 bit MachO), but it is up to MC to decide which relocations to create. llvm-svn: 130341
-
Andrew Trick authored
Modified LinearFunctionTestReplace to push the condition on the dead list instead of eagerly deleting it. This can cause unnecessary IV rewrites, which should have no effect on codegen and will not be an issue once we stop generating canonical IVs. llvm-svn: 130340
-
Devang Patel authored
llvm-svn: 130339
-
Eli Friedman authored
Make the fast-isel code for literal 0.0 a bit shorter/faster, since 0.0 is common. rdar://problem/9303592 . llvm-svn: 130338
-
Eli Friedman authored
llvm-svn: 130337
-
- Apr 27, 2011
-
-
Rafael Espindola authored
llvm-svn: 130331
-
Kevin Enderby authored
value is zero so it does not add a NULL expr operand. llvm-svn: 130330
-
Dan Gohman authored
llvm-svn: 130327
-
Devang Patel authored
llvm-svn: 130326
-
Evan Cheng authored
successors) and use inverse depth first search to traverse the BBs. However that doesn't work when the CFG has infinite loops. Simply do a linear traversal of all BBs work just fine. rdar://9344645 llvm-svn: 130324
-
Dan Gohman authored
only check arguments with pointer types. Update the documentation of IntrReadArgMem reflect this. While here, add support for TBAA tags on intrinsic calls. llvm-svn: 130317
-
Andrew Trick authored
llvm-svn: 130316
-
Devang Patel authored
Simplify cfg inserts a call to trap when unreachable code is detected. Assign DebugLoc to this new trap instruction. llvm-svn: 130315
-
Jakob Stoklund Olesen authored
We cannot rely on the <imp-def> operands added by LiveIntervals in all cases as demonstrated by the test case. llvm-svn: 130313
-
Rafael Espindola authored
non private symbol. This will be use for handling foo: .cfi_startproc ... On OS X where we have to create a foo.eh symbol. llvm-svn: 130305
-
Duncan Sands authored
effective in avoiding recomputation of LCSSA form; the widespread use of instsimplify (which looks through phi nodes) means it was not preserving LCSSA form anyway; and instcombine is no longer scheduled in the middle of the loop passes so this doesn't matter anymore. llvm-svn: 130301
-
Andrew Trick authored
llvm-svn: 130294
-
Eli Friedman authored
length. (I'm planning to use this to implement byval.) llvm-svn: 130274
-
Rafael Espindola authored
step towards using .cfi_* on OS X. llvm-svn: 130273
-
Eli Friedman authored
rdar://problem/9303306 . llvm-svn: 130272
-
Andrew Trick authored
Fix for PR9633 [indvars] Assertion `isa<X>(Val) && "cast<Ty>() argument of incompatible type!"' failed. Added a type check in ScalarEvolution::computeSCEVAtScope to handle the case in which operands of an AddRecExpr in the current scope are folded. llvm-svn: 130271
-
Chris Lattner authored
an earlier load could be widened to encompass a later load. For example, if we see: X = load i8* P, align 4 Y = load i8* (P+3), align 1 and we have a 32-bit native integer type, we can widen the former load to i32 which then makes the second load redundant. GVN can't actually do anything with this load/load relation yet, so this isn't testable, but it is the next step to resolving PR6627, and a fairly general class of "merge neighboring loads" missed optimizations. llvm-svn: 130250
-
Jakob Stoklund Olesen authored
The number of blocks covered by a live range must be strictly decreasing when splitting, otherwise we can't allow repeated splitting. llvm-svn: 130249
-
- Apr 26, 2011
-
-
Chris Lattner authored
llvm-svn: 130248
-
Chris Lattner authored
work-in-progress that is not progressing, and it has issues. llvm-svn: 130247
-
Evan Cheng authored
more callee-saved registers and introduce copies. Only allows it if scheduling a node above calls would end up lessen register pressure. Call operands also has added ABI restrictions for register allocation, so be extra careful with hoisting them above calls. rdar://9329627 llvm-svn: 130245
-
Chris Lattner authored
when X has multiple uses. This is useful for exposing secondary optimizations, but the X86 backend isn't ready for this when X has a single use. For example, this can disable load folding. This is inching towards resolving PR6627. llvm-svn: 130238
-
Chris Lattner authored
llvm-svn: 130237
-