[PATCH] D139466: update_mir_test_checks.py: match dead vreg definitions
Nicolai Hähnle via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Dec 6 14:32:19 PST 2022
nhaehnle created this revision.
nhaehnle added reviewers: arichardson, bogner, asi-sc.
Herald added a project: All.
nhaehnle requested review of this revision.
Herald added a project: LLVM.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D139466
Files:
llvm/test/tools/UpdateTestChecks/update_mir_test_checks/Inputs/x86-dead-def.mir
llvm/test/tools/UpdateTestChecks/update_mir_test_checks/Inputs/x86-dead-def.mir.expected
llvm/test/tools/UpdateTestChecks/update_mir_test_checks/x86-dead-def.test
llvm/utils/update_mir_test_checks.py
Index: llvm/utils/update_mir_test_checks.py
===================================================================
--- llvm/utils/update_mir_test_checks.py
+++ llvm/utils/update_mir_test_checks.py
@@ -36,9 +36,11 @@
MI_FLAGS_STR= (
r'(frame-setup |frame-destroy |nnan |ninf |nsz |arcp |contract |afn '
r'|reassoc |nuw |nsw |exact |nofpexcept |nomerge )*')
+VREG_DEF_FLAGS_STR = r'(?:dead )*'
VREG_DEF_RE = re.compile(
- r'^ *(?P<vregs>{0}(?:, {0})*) = '
- r'{1}(?P<opcode>[A-Zt][A-Za-z0-9_]+)'.format(VREG_RE.pattern, MI_FLAGS_STR))
+ r'^ *(?P<vregs>{2}{0}(?:, {2}{0})*) = '
+ r'{1}(?P<opcode>[A-Zt][A-Za-z0-9_]+)'.format(
+ VREG_RE.pattern, MI_FLAGS_STR, VREG_DEF_FLAGS_STR))
MIR_PREFIX_DATA_RE = re.compile(r'^ *(;|bb.[0-9].*: *$|[a-z]+:( |$)|$)')
IR_FUNC_NAME_RE = re.compile(
Index: llvm/test/tools/UpdateTestChecks/update_mir_test_checks/x86-dead-def.test
===================================================================
--- /dev/null
+++ llvm/test/tools/UpdateTestChecks/update_mir_test_checks/x86-dead-def.test
@@ -0,0 +1,5 @@
+# REQUIRES: x86-registered-target
+## Check that update_mir_test_checks replaces vregs in dead definitions
+
+# RUN: cp -f %S/Inputs/x86-dead-def.mir %t.mir && %update_mir_test_checks %t.mir
+# RUN: diff -u %S/Inputs/x86-dead-def.mir.expected %t.mir
Index: llvm/test/tools/UpdateTestChecks/update_mir_test_checks/Inputs/x86-dead-def.mir.expected
===================================================================
--- /dev/null
+++ llvm/test/tools/UpdateTestChecks/update_mir_test_checks/Inputs/x86-dead-def.mir.expected
@@ -0,0 +1,22 @@
+# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
+# RUN: llc -mtriple=x86_64-linux-gnu -run-pass=none -verify-machineinstrs %s -o - | FileCheck %s --check-prefixes=CHECK
+
+--- |
+
+ define void @test() {
+ unreachable
+ }
+
+...
+---
+name: test
+alignment: 16
+registers:
+ - { id: 0, class: gpr, preferred-register: '' }
+body: |
+ bb.1:
+ ; CHECK-LABEL: name: test
+ ; CHECK: dead [[C:%[0-9]+]]:gpr(s32) = G_CONSTANT i32 0
+ dead %0(s32) = G_CONSTANT i32 0
+
+...
Index: llvm/test/tools/UpdateTestChecks/update_mir_test_checks/Inputs/x86-dead-def.mir
===================================================================
--- /dev/null
+++ llvm/test/tools/UpdateTestChecks/update_mir_test_checks/Inputs/x86-dead-def.mir
@@ -0,0 +1,20 @@
+# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
+# RUN: llc -mtriple=x86_64-linux-gnu -run-pass=none -verify-machineinstrs %s -o - | FileCheck %s --check-prefixes=CHECK
+
+--- |
+
+ define void @test() {
+ unreachable
+ }
+
+...
+---
+name: test
+alignment: 16
+registers:
+ - { id: 0, class: gpr, preferred-register: '' }
+body: |
+ bb.1:
+ dead %0(s32) = G_CONSTANT i32 0
+
+...
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D139466.480628.patch
Type: text/x-patch
Size: 2872 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20221206/e65792d7/attachment.bin>
More information about the llvm-commits
mailing list