diff options
| author | Davide Italiano <davide@freebsd.org> | 2017-01-31 18:09:05 +0000 |
|---|---|---|
| committer | Davide Italiano <davide@freebsd.org> | 2017-01-31 18:09:05 +0000 |
| commit | aec4617dc8a8174c43dcf31c161a100f29b50d1e (patch) | |
| tree | 1f2f4153e83ff2080a333081359183687bdd49e8 /llvm/test/Transforms | |
| parent | c0eeee7a7820e0d62c0269c69a3dfd9fb6fb5448 (diff) | |
| download | bcm5719-llvm-aec4617dc8a8174c43dcf31c161a100f29b50d1e.tar.gz bcm5719-llvm-aec4617dc8a8174c43dcf31c161a100f29b50d1e.zip | |
[Instcombine] Combine consecutive identical fences
Differential Revision: https://reviews.llvm.org/D29314
llvm-svn: 293661
Diffstat (limited to 'llvm/test/Transforms')
| -rw-r--r-- | llvm/test/Transforms/InstCombine/consecutive-fences.ll | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/llvm/test/Transforms/InstCombine/consecutive-fences.ll b/llvm/test/Transforms/InstCombine/consecutive-fences.ll new file mode 100644 index 00000000000..6f1c4127738 --- /dev/null +++ b/llvm/test/Transforms/InstCombine/consecutive-fences.ll @@ -0,0 +1,47 @@ +; RUN: opt -instcombine -S %s | FileCheck %s + +; Make sure we collapse the fences in this case + +; CHECK-LABEL: define void @tinkywinky +; CHECK-NEXT: fence seq_cst +; CHECK-NEXT: fence singlethread acquire +; CHECK-NEXT: ret void +; CHECK-NEXT: } + +define void @tinkywinky() { + fence seq_cst + fence seq_cst + fence seq_cst + fence singlethread acquire + fence singlethread acquire + fence singlethread acquire + ret void +} + +; CHECK-LABEL: define void @dipsy +; CHECK-NEXT: fence seq_cst +; CHECK-NEXT: fence singlethread seq_cst +; CHECK-NEXT: ret void +; CHECK-NEXT: } + +define void @dipsy() { + fence seq_cst + fence singlethread seq_cst + ret void +} + +; CHECK-LABEL: define void @patatino +; CHECK-NEXT: fence acquire +; CHECK-NEXT: fence seq_cst +; CHECK-NEXT: fence acquire +; CHECK-NEXT: fence seq_cst +; CHECK-NEXT: ret void +; CHECK-NEXT: } + +define void @patatino() { + fence acquire + fence seq_cst + fence acquire + fence seq_cst + ret void +} |

