- Mar 30, 2011
-
-
Jay Foad authored
llvm-svn: 128535
-
- Mar 21, 2011
-
-
Devang Patel authored
llvm-svn: 128030
-
- Mar 19, 2011
-
-
Devang Patel authored
If an AllocaInst referred by DbgDeclareInst is used by a LoadInst then the LoadInst should also get a corresponding llvm.dbg.value intrinsic. llvm-svn: 127924
-
Devang Patel authored
llvm-svn: 127923
-
Devang Patel authored
llvm-svn: 127922
-
- Mar 17, 2011
-
-
Devang Patel authored
This is done by lowering dbg.declare intrinsic into dbg.value intrinsic. Radar 9143931. llvm-svn: 127834
-
Devang Patel authored
llvm-svn: 127832
-
- Mar 15, 2011
-
-
Cameron Zwarich authored
llvm-svn: 127684
-
Cameron Zwarich authored
llvm-svn: 127674
-
Eli Friedman authored
of pointers in an std::map. llvm-svn: 127650
-
- Mar 09, 2011
-
-
Eli Friedman authored
reachable uses, but there still might be uses in dead blocks. Use the standard solution of replacing all the uses with undef. This is a rare case because it's very sensitive to phase ordering in SimplifyCFG. llvm-svn: 127299
-
- Mar 04, 2011
-
-
Jakob Stoklund Olesen authored
Avoid colliding with the sentinels, hopefully unbreaking llvm-gcc-x86_64-linux-selfhost. llvm-svn: 126982
-
- Feb 28, 2011
-
-
Frits van Bommel authored
Based on a patch by Alistair Lynn. llvm-svn: 126647
-
- Feb 25, 2011
-
-
Benjamin Kramer authored
Yes, there are other types than i8* and GEPs on them can produce an add+multiply. We don't consider that cheap enough to be speculatively executed. llvm-svn: 126481
-
Benjamin Kramer authored
llvm-svn: 126452
-
- Feb 24, 2011
-
-
Benjamin Kramer authored
llvm-svn: 126445
-
Devang Patel authored
llvm-svn: 126398
-
- Feb 21, 2011
-
-
Duncan Sands authored
itself without going via a phi node then we could return false here in spite of making a change. Also, tweak the comment because this method can (and always could) return true without deleting the original phi node. For example, if the phi node was used by a read-only invoke instruction which is used by another phi node phi2 which is only used by and only uses the invoke, then phi2 would be deleted but not the invoke instruction and not the original phi node. llvm-svn: 126129
-
Duncan Sands authored
should be that if the phi is used by a side-effect free instruction with no uses then the phi and the instruction now get zapped (checked by the unittest). llvm-svn: 126124
-
- Feb 20, 2011
-
-
Nick Lewycky authored
test for that. With this change, test/CodeGen/X86/codegen-dce.ll no longer finds any instructions to DCE, so delete the test. Also renamed J and JP to I and IP in RecursivelyDeleteDeadPHINode. llvm-svn: 126088
-
Nick Lewycky authored
by Andrew Clinton! llvm-svn: 126077
-
- Feb 18, 2011
-
-
Chris Lattner authored
This is part of a futile attempt to not "break" bizzaro code like this: l1: printf("l1: %p\n", &&l1); ++x; if( x < 3 ) goto l1; Previously we'd fold &&l1 to 1, which is fine per our semantics but not helpful to the user. llvm-svn: 125827
-
- Feb 11, 2011
-
-
Cameron Zwarich authored
llvm-svn: 125317
-
- Feb 07, 2011
-
-
Benjamin Kramer authored
SimplifyCFG: Track the number of used icmps when turning a icmp chain into a switch. If we used only one icmp, don't turn it into a switch. Also prevent the switch-to-icmp transform from creating identity adds, noticed by Marius Wachtler. llvm-svn: 125056
-
- Feb 03, 2011
-
-
Benjamin Kramer authored
SimplifyCFG: Also transform switches that represent a range comparison but are not sorted into sub+icmp. This transforms another 1000 switches in gcc.c. llvm-svn: 124826
-
- Feb 02, 2011
-
-
Benjamin Kramer authored
This makes the job of the later optzn passes easier, allowing the vast amount of icmp transforms to chew on it. We transform 840 switches in gcc.c, leading to a 16k byte shrink of the resulting binary on i386-linux. The testcase from README.txt now compiles into decl %edi cmpl $3, %edi sbbl %eax, %eax andl $1, %eax ret llvm-svn: 124724
-
- Jan 29, 2011
-
-
Evan Cheng authored
llvm-svn: 124526
-
Evan Cheng authored
llvm-svn: 124522
-
Evan Cheng authored
Re-commit r124462 with fixes. Tail recursion elim will now dup ret into unconditional predecessor to enable TCE on demand. llvm-svn: 124518
-
- Jan 28, 2011
-
-
Evan Cheng authored
llvm-svn: 124478
-
Evan Cheng authored
branches. PR8575, rdar://5134905, rdar://8911460. - Allow codegen tail duplication to dup small return blocks after register allocation is done. llvm-svn: 124462
-
- Jan 24, 2011
-
-
Chris Lattner authored
code. llvm-svn: 124100
-
Chris Lattner authored
llvm-svn: 124099
-
- Jan 23, 2011
-
-
Cameron Zwarich authored
on test-suite + SPEC2000 & SPEC2006. llvm-svn: 124068
-
- Jan 18, 2011
-
-
Cameron Zwarich authored
llvm-svn: 123732
-
Cameron Zwarich authored
function. This seems to be about a 1.5% speedup of -scalarrepl on test-suite with SPEC2000 and SPEC2006. llvm-svn: 123731
-
Cameron Zwarich authored
dominance and post-dominance frontiers. llvm-svn: 123725
-
Cameron Zwarich authored
llvm-svn: 123724
-
- Jan 17, 2011
-
-
Cameron Zwarich authored
checks enabled: 1) Use '<' to compare integers in a comparison function rather than '<='. 2) Use the uniqued set DefBlocks rather than Info.DefiningBlocks to initialize the priority queue. The speedup of scalarrepl on test-suite + SPEC2000 + SPEC2006 is a bit less, at just under 16% rather than 17%. llvm-svn: 123662
-
Cameron Zwarich authored
llvm-svn: 123618
-