- 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
-
Andrew Trick authored
Modified patch by Adam Preuss. This builds on the existing framework for block tracing, edge profiling and optimal edge profiling. See -help-hidden for new flags. For documentation, see the technical report "Implementation of Path Profiling..." in llvm.org/pubs. llvm-svn: 124515
-
Nick Lewycky authored
so that the code reads properly. llvm-svn: 124514
-
- Jan 28, 2011
-
-
Roman Divacky authored
llvm-svn: 124498
-
Duncan Sands authored
llvm-svn: 124497
-
Duncan Sands authored
zero effect on the testsuite (it improves two Ada testcases). llvm-svn: 124496
-
Bob Wilson authored
Patch by Jyun-Yan You. llvm-svn: 124492
-
Duncan Sands authored
benchmarks, and that it can be simplified to X/Y. (In general you can only simplify (Z*Y)/Y to Z if the multiplication did not overflow; if Z has the form "X/Y" then this is the case). This patch implements that transform and moves some Div logic out of instcombine and into InstructionSimplify. Unfortunately instcombine gets in the way somewhat, since it likes to change (X/Y)*Y into X-(X rem Y), so I had to teach instcombine about this too. Finally, thanks to the NSW/NUW flags, sometimes we know directly that "Z*Y" does not overflow, because the flag says so, so I added that logic too. This eliminates a bunch of divisions and subtractions in 447.dealII, and has good effects on some other benchmarks too. It seems to have quite an effect on tramp3d-v4 but it's hard to say if it's good or bad because inlining decisions changed, resulting in massive changes all over. llvm-svn: 124487
-
Oscar Fuentes authored
llvm-svn: 124486
-
Roman Divacky authored
llvm-svn: 124485
-
Nick Lewycky authored
functionality change. llvm-svn: 124482
-
Nick Lewycky authored
llvm-svn: 124480
-
Nick Lewycky authored
llvm-svn: 124479
-
Evan Cheng authored
llvm-svn: 124478
-
Nick Lewycky authored
the function equality set. llvm-svn: 124475
-
Nick Lewycky authored
test. llvm-svn: 124473
-
Nick Lewycky authored
llvm-svn: 124472
-
Rafael Espindola authored
llvm-svn: 124471
-
Nick Lewycky authored
llvm-svn: 124470
-
Nick Lewycky authored
llvm-svn: 124469
-
Rafael Espindola authored
llvm-svn: 124468
-
Nico Weber authored
llvm-svn: 124467
-
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
-
Evan Cheng authored
llvm-svn: 124458
-
Kevin Enderby authored
only .syntax unified is supported. llvm-svn: 124454
-
Bob Wilson authored
llvm-svn: 124450
-
- Jan 27, 2011
-
-
Oscar Fuentes authored
location was stated with FFI_INCLUDE_DIR/FFI_LIBRARY_DIR. llvm-svn: 124449
-
David Greene authored
[AVX] Clean up the code to configure target lowering for AVX. Specify how to lower more/new operations. This is a prerequisite for adding additional AVX lowering. llvm-svn: 124447
-
Andrew Trick authored
llvm-svn: 124443
-
Andrew Trick authored
rdar://problem/8893967: JM/lencod miscompile at -arch armv7 -mthumb -O3 Added ResurrectKill to remove kill flags after we decide to reused a physical register. And (hopefully) ensure that we call it in all the right places. Sorry, I'm not checking in a unit test given that it's a miscompile I can't reproduce easily with a toy example. Failures in the rewriter depend on a series of heuristic decisions maked during one of the many upstream phases in codegen. This case would require coercing regalloc to generate a couple of rematerialzations in a way that causes the scavenger to reuse the same register at just the wrong point. The general way to test this is to implement kill flags verification. Then we could have a simple, robust compile-only unit test. That would be worth doing if the whole pass was not about to disappear. At this point we focus verification work on the next generation of regalloc. llvm-svn: 124442
-
Douglas Gregor authored
Clang: separate the access-control diagnostics from other diagnostics that do not have SFINAE behavior. llvm-svn: 124440
-
Benjamin Kramer authored
llvm-svn: 124426
-
Nick Lewycky authored
llvm-svn: 124406
-
Nick Lewycky authored
llvm-svn: 124404
-
Oscar Fuentes authored
llvm-config --cflags --cxxflags --cppflags We shouldn't impose those flags on people who use llvm-config for building their own projects. llvm-svn: 124399
-
Devang Patel authored
llvm-svn: 124397
-
Devang Patel authored
Take 2. This includes fix for dragonegg crash. llvm-svn: 124380
-
Roman Divacky authored
Add support for specifying register name in cfi-register/offset/def as well as register number. llvm-svn: 124379
-