diff options
author | Sanjay Patel <spatel@rotateright.com> | 2019-09-23 17:01:01 +0000 |
---|---|---|
committer | Sanjay Patel <spatel@rotateright.com> | 2019-09-23 17:01:01 +0000 |
commit | 7414151929b60a4ba90570bd814610a20e44d76a (patch) | |
tree | 4f1de6febe69c5c2ac645f829af069ec03e9b5bb /llvm/test/CodeGen/ARM/a15-partial-update.ll | |
parent | 7e56dd0229f8898177d51b64dfb23828c990feed (diff) | |
download | bcm5719-llvm-7414151929b60a4ba90570bd814610a20e44d76a.tar.gz bcm5719-llvm-7414151929b60a4ba90570bd814610a20e44d76a.zip |
[BreakFalseDeps] ignore function with minsize attribute
This came up in the x86-specific:
https://bugs.llvm.org/show_bug.cgi?id=43239
...but it is a general problem for the BreakFalseDeps pass.
Dependencies may be broken by adding some other instruction,
so that should be avoided if the overall goal is to minimize size.
Differential Revision: https://reviews.llvm.org/D67363
llvm-svn: 372628
Diffstat (limited to 'llvm/test/CodeGen/ARM/a15-partial-update.ll')
-rw-r--r-- | llvm/test/CodeGen/ARM/a15-partial-update.ll | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/llvm/test/CodeGen/ARM/a15-partial-update.ll b/llvm/test/CodeGen/ARM/a15-partial-update.ll index c20aaa2fa5d..a3971d6a034 100644 --- a/llvm/test/CodeGen/ARM/a15-partial-update.ll +++ b/llvm/test/CodeGen/ARM/a15-partial-update.ll @@ -56,6 +56,11 @@ ret: ret void } +; If minimizing size, that overrides perf, so no extra vmov.f64 here. + +; TODO: This (and above) could use a splat load to remove the false +; dependence with no extra instruction. + define void @t2_minsize(<4 x i8> *%in, <4 x i8> *%out, i32 %n) minsize { ; CHECK-LABEL: t2_minsize: ; CHECK: @ %bb.0: @ %entry @@ -63,7 +68,6 @@ define void @t2_minsize(<4 x i8> *%in, <4 x i8> *%out, i32 %n) minsize { ; CHECK-NEXT: add r1, r1, #4 ; CHECK-NEXT: .LBB2_1: @ %loop ; CHECK-NEXT: @ =>This Inner Loop Header: Depth=1 -; CHECK-NEXT: vmov.f64 d16, #5.000000e-01 ; CHECK-NEXT: vld1.32 {d16[0]}, [r0:32] ; CHECK-NEXT: vmovl.u8 q8, d16 ; CHECK-NEXT: vuzp.8 d16, d18 |