diff options
author | Clement Courbet <courbet@google.com> | 2019-06-26 11:50:18 +0000 |
---|---|---|
committer | Clement Courbet <courbet@google.com> | 2019-06-26 11:50:18 +0000 |
commit | 7b3a5f0e6da888655fb553c7af98db7fc1084c79 (patch) | |
tree | 6bae3226e9faf4259fbb96f887df9216c9d6c8f4 /llvm/test/Other | |
parent | 449aa3c6e8a23b0484daabd5757f4fe35572f7d7 (diff) | |
download | bcm5719-llvm-7b3a5f0e6da888655fb553c7af98db7fc1084c79.tar.gz bcm5719-llvm-7b3a5f0e6da888655fb553c7af98db7fc1084c79.zip |
[ExpandMemCmp][MergeICmps] Move passes out of CodeGen into opt pipeline.
This allows later passes (in particular InstCombine) to optimize more
cases.
One that's important to us is `memcmp(p, q, constant) < 0` and memcmp(p, q, constant) > 0.
llvm-svn: 364412
Diffstat (limited to 'llvm/test/Other')
-rw-r--r-- | llvm/test/Other/opt-O2-pipeline.ll | 5 | ||||
-rw-r--r-- | llvm/test/Other/opt-O3-pipeline.ll | 5 | ||||
-rw-r--r-- | llvm/test/Other/opt-Os-pipeline.ll | 5 |
3 files changed, 15 insertions, 0 deletions
diff --git a/llvm/test/Other/opt-O2-pipeline.ll b/llvm/test/Other/opt-O2-pipeline.ll index 8f4d98fe3c9..5ff2a2a8f4e 100644 --- a/llvm/test/Other/opt-O2-pipeline.ll +++ b/llvm/test/Other/opt-O2-pipeline.ll @@ -136,6 +136,11 @@ ; CHECK-NEXT: Function Alias Analysis Results ; CHECK-NEXT: Memory Dependence Analysis ; CHECK-NEXT: MemCpy Optimization +; CHECK-NEXT: Basic Alias Analysis (stateless AA impl) +; CHECK-NEXT: Function Alias Analysis Results +; CHECK-NEXT: Merge contiguous icmps into a memcmp +; CHECK-NEXT: Expand memcmp() to load/stores +; CHECK-NEXT: Early CSE ; CHECK-NEXT: Sparse Conditional Constant Propagation ; CHECK-NEXT: Demanded bits analysis ; CHECK-NEXT: Bit-Tracking Dead Code Elimination diff --git a/llvm/test/Other/opt-O3-pipeline.ll b/llvm/test/Other/opt-O3-pipeline.ll index 07e20b80f46..1c25f05b74e 100644 --- a/llvm/test/Other/opt-O3-pipeline.ll +++ b/llvm/test/Other/opt-O3-pipeline.ll @@ -141,6 +141,11 @@ ; CHECK-NEXT: Function Alias Analysis Results ; CHECK-NEXT: Memory Dependence Analysis ; CHECK-NEXT: MemCpy Optimization +; CHECK-NEXT: Basic Alias Analysis (stateless AA impl) +; CHECK-NEXT: Function Alias Analysis Results +; CHECK-NEXT: Merge contiguous icmps into a memcmp +; CHECK-NEXT: Expand memcmp() to load/stores +; CHECK-NEXT: Early CSE ; CHECK-NEXT: Sparse Conditional Constant Propagation ; CHECK-NEXT: Demanded bits analysis ; CHECK-NEXT: Bit-Tracking Dead Code Elimination diff --git a/llvm/test/Other/opt-Os-pipeline.ll b/llvm/test/Other/opt-Os-pipeline.ll index bacda22ead1..3dc9bcedbea 100644 --- a/llvm/test/Other/opt-Os-pipeline.ll +++ b/llvm/test/Other/opt-Os-pipeline.ll @@ -123,6 +123,11 @@ ; CHECK-NEXT: Function Alias Analysis Results ; CHECK-NEXT: Memory Dependence Analysis ; CHECK-NEXT: MemCpy Optimization +; CHECK-NEXT: Basic Alias Analysis (stateless AA impl) +; CHECK-NEXT: Function Alias Analysis Results +; CHECK-NEXT: Merge contiguous icmps into a memcmp +; CHECK-NEXT: Expand memcmp() to load/stores +; CHECK-NEXT: Early CSE ; CHECK-NEXT: Sparse Conditional Constant Propagation ; CHECK-NEXT: Demanded bits analysis ; CHECK-NEXT: Bit-Tracking Dead Code Elimination |