|
1 | 1 | ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 5
|
2 | 2 | ; RUN: opt < %s -S -mtriple=aarch64-none-linux-gnu -mattr=+neon -passes=early-cse -earlycse-debug-hash | FileCheck %s
|
3 |
| -; RUN: opt < %s -S -mtriple=aarch64-none-linux-gnu -mattr=+neon -aa-pipeline=basic-aa -passes='early-cse<memssa>' | FileCheck %s |
| 3 | +; RUN: opt < %s -S -mtriple=aarch64-none-linux-gnu -mattr=+neon -aa-pipeline=basic-aa -passes='early-cse<memssa>' -verify-analysis-invalidation | FileCheck %s |
4 | 4 |
|
5 | 5 | define <4 x i32> @test_cse(ptr %a, [2 x <4 x i32>] %s.coerce, i32 %n) {
|
6 | 6 | ; CHECK-LABEL: define <4 x i32> @test_cse(
|
@@ -324,6 +324,22 @@ for.end: ; preds = %for.cond
|
324 | 324 | ret <4 x i32> %res.0
|
325 | 325 | }
|
326 | 326 |
|
| 327 | +define void @test_ld4_st4_no_cse(ptr %p, <16 x i8> %A, <16 x i8> %B) { |
| 328 | +; CHECK-LABEL: define void @test_ld4_st4_no_cse( |
| 329 | +; CHECK-SAME: ptr [[P:%.*]], <16 x i8> [[A:%.*]], <16 x i8> [[B:%.*]]) #[[ATTR0]] { |
| 330 | +; CHECK-NEXT: [[ENTRY:.*:]] |
| 331 | +; CHECK-NEXT: [[LD:%.*]] = tail call { <16 x i8>, <16 x i8>, <16 x i8>, <16 x i8> } @llvm.aarch64.neon.ld4.v16i8.p0(ptr [[P]]) |
| 332 | +; CHECK-NEXT: [[EXT:%.*]] = extractvalue { <16 x i8>, <16 x i8>, <16 x i8>, <16 x i8> } [[LD]], 0 |
| 333 | +; CHECK-NEXT: tail call void @llvm.aarch64.neon.st4.v16i8.p0(<16 x i8> [[EXT]], <16 x i8> [[A]], <16 x i8> [[B]], <16 x i8> zeroinitializer, ptr [[P]]) |
| 334 | +; CHECK-NEXT: ret void |
| 335 | +; |
| 336 | +entry: |
| 337 | + %ld = tail call { <16 x i8>, <16 x i8>, <16 x i8>, <16 x i8> } @llvm.aarch64.neon.ld4.v16i8.p0(ptr %p) |
| 338 | + %ext = extractvalue { <16 x i8>, <16 x i8>, <16 x i8>, <16 x i8> } %ld, 0 |
| 339 | + tail call void @llvm.aarch64.neon.st4.v16i8.p0(<16 x i8> %ext, <16 x i8> %A, <16 x i8> %B, <16 x i8> zeroinitializer, ptr %p) |
| 340 | + ret void |
| 341 | +} |
| 342 | + |
327 | 343 | ; Function Attrs: nounwind
|
328 | 344 | declare void @llvm.aarch64.neon.st2.v4i32.p0(<4 x i32>, <4 x i32>, ptr nocapture)
|
329 | 345 |
|
|
0 commit comments