diff options
| author | Sanjay Patel <spatel@rotateright.com> | 2018-10-15 16:54:07 +0000 |
|---|---|---|
| committer | Sanjay Patel <spatel@rotateright.com> | 2018-10-15 16:54:07 +0000 |
| commit | 8bd74785f0a29510805fa38a3e4f4bd8b6bceefd (patch) | |
| tree | 94d7fce07d0f138ed31b449f95f22a609c2d6d6d /llvm/test/CodeGen | |
| parent | bc8aee15a29413eaef8b689273fa8f7603f995fc (diff) | |
| download | bcm5719-llvm-8bd74785f0a29510805fa38a3e4f4bd8b6bceefd.tar.gz bcm5719-llvm-8bd74785f0a29510805fa38a3e4f4bd8b6bceefd.zip | |
[DAGCombiner] allow undef elts in vector fmul matching
llvm-svn: 344534
Diffstat (limited to 'llvm/test/CodeGen')
| -rw-r--r-- | llvm/test/CodeGen/AArch64/fadd-combines.ll | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/llvm/test/CodeGen/AArch64/fadd-combines.ll b/llvm/test/CodeGen/AArch64/fadd-combines.ll index c2e4430029a..7332101a481 100644 --- a/llvm/test/CodeGen/AArch64/fadd-combines.ll +++ b/llvm/test/CodeGen/AArch64/fadd-combines.ll @@ -76,9 +76,8 @@ define <4 x float> @fmulnegtwo_vec_commute(<4 x float> %a, <4 x float> %b) { define <4 x float> @fmulnegtwo_vec_undefs(<4 x float> %a, <4 x float> %b) { ; CHECK-LABEL: fmulnegtwo_vec_undefs: ; CHECK: // %bb.0: -; CHECK-NEXT: movi v2.4s, #192, lsl #24 -; CHECK-NEXT: fmul v1.4s, v1.4s, v2.4s -; CHECK-NEXT: fadd v0.4s, v0.4s, v1.4s +; CHECK-NEXT: fadd v1.4s, v1.4s, v1.4s +; CHECK-NEXT: fsub v0.4s, v0.4s, v1.4s ; CHECK-NEXT: ret %mul = fmul <4 x float> %b, <float undef, float -2.0, float undef, float -2.0> %add = fadd <4 x float> %a, %mul @@ -88,9 +87,8 @@ define <4 x float> @fmulnegtwo_vec_undefs(<4 x float> %a, <4 x float> %b) { define <4 x float> @fmulnegtwo_vec_commute_undefs(<4 x float> %a, <4 x float> %b) { ; CHECK-LABEL: fmulnegtwo_vec_commute_undefs: ; CHECK: // %bb.0: -; CHECK-NEXT: movi v2.4s, #192, lsl #24 -; CHECK-NEXT: fmul v1.4s, v1.4s, v2.4s -; CHECK-NEXT: fadd v0.4s, v1.4s, v0.4s +; CHECK-NEXT: fadd v1.4s, v1.4s, v1.4s +; CHECK-NEXT: fsub v0.4s, v0.4s, v1.4s ; CHECK-NEXT: ret %mul = fmul <4 x float> %b, <float -2.0, float undef, float -2.0, float -2.0> %add = fadd <4 x float> %mul, %a |

