[PATCH] D85638: [ARM] Unrestrict Armv8-a IT when at minsize
Sam Parker via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Aug 10 05:21:13 PDT 2020
samparker added inline comments.
================
Comment at: llvm/test/CodeGen/ARM/codesize-ifcvt.mir:2
# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
-# RUN: llc -mtriple=thumbv7 -run-pass=if-converter %s -o - | FileCheck %s
+# RUN: llc -mtriple=thumbv7 -run-pass=if-converter %s -o - | FileCheck %s --check-prefix=V7
+# RUN: llc -mtriple=thumbv8 -run-pass=if-converter %s -o - | FileCheck %s --check-prefix=V8
----------------
samparker wrote:
> NickGuy wrote:
> > NickGuy wrote:
> > > Could we also have a test for V8 with -Oz? Given that that is what this change effects most
> > Nit: Shouldn't this be CHECK-V7? I haven't seen any tests that don't follow that convention.
> -Oz is a clang frontend option so we can't use it for testing with llc. With LLVM IR, we attach attributes on the functions for optsize (Os) and minsize (Oz):
>
> ```
> attributes #0 = { optsize }
> attributes #1 = { minsize }
> ```
fair enough.
================
Comment at: llvm/test/CodeGen/ARM/codesize-ifcvt.mir:2-3
# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
-# RUN: llc -mtriple=thumbv7 -run-pass=if-converter %s -o - | FileCheck %s
+# RUN: llc -mtriple=thumbv7 -run-pass=if-converter %s -o - | FileCheck %s --check-prefix=V7
+# RUN: llc -mtriple=thumbv8 -run-pass=if-converter %s -o - | FileCheck %s --check-prefix=V8
--- |
----------------
NickGuy wrote:
> NickGuy wrote:
> > Could we also have a test for V8 with -Oz? Given that that is what this change effects most
> Nit: Shouldn't this be CHECK-V7? I haven't seen any tests that don't follow that convention.
-Oz is a clang frontend option so we can't use it for testing with llc. With LLVM IR, we attach attributes on the functions for optsize (Os) and minsize (Oz):
```
attributes #0 = { optsize }
attributes #1 = { minsize }
```
================
Comment at: llvm/test/CodeGen/ARM/codesize-ifcvt.mir:223-251
+ ; V8: tTAILJMPdND @extfunc, 14 /* CC::al */, $noreg, implicit $sp, implicit $sp
; CHECK-LABEL: name: test_nosize
; CHECK: bb.0 (%ir-block.0):
; CHECK: successors: %bb.2(0x40000000), %bb.1(0x40000000)
; CHECK: liveins: $lr, $r7
; CHECK: renamable $r0 = t2MOVi 1, 14 /* CC::al */, $noreg, $noreg
; CHECK: t2CMPri killed renamable $r0, 0, 14 /* CC::al */, $noreg, implicit-def $cpsr
----------------
NickGuy wrote:
> Is any of this needed now? It looks identical to the V7 block.
Ah! cheers.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D85638/new/
https://reviews.llvm.org/D85638
More information about the llvm-commits
mailing list