update_mir_test_checks.py - separate different prefix checks
authorEddie Phillips <eddiephillips101@gmail.com>
Thu, 6 Jul 2023 10:48:56 +0000 (11:48 +0100)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Thu, 6 Jul 2023 10:49:52 +0000 (11:49 +0100)
Matches behaviour in update_llc_test_checks.py etc.

Fixes #63112

Differential Revision: https://reviews.llvm.org/D152333

llvm/test/tools/UpdateTestChecks/update_mir_test_checks/Inputs/x86-multiple-prefixes.ll.expected
llvm/utils/update_mir_test_checks.py

index 1f51a86..32ea096 100644 (file)
@@ -22,6 +22,7 @@ define void @zero128() nounwind ssp {
   ; NOAVX-NEXT:   [[MOV64rm:%[0-9]+]]:gr64 = MOV64rm $rip, 1, $noreg, target-flags(x86-gotpcrel) @z, $noreg :: (load (s64) from got, align 16)
   ; NOAVX-NEXT:   MOVAPSmr killed [[MOV64rm]], 1, $noreg, 0, $noreg, killed [[V_SET0_]] :: (store (s128) into @z)
   ; NOAVX-NEXT:   RET 0
+  ;
   ; AVX-LABEL: name: zero128
   ; AVX: bb.0 (%ir-block.0):
   ; AVX-NEXT:   [[V_SET0_:%[0-9]+]]:vr128 = V_SET0
index 96732bd..815738b 100755 (executable)
@@ -235,9 +235,10 @@ def add_checks_for_function(
                 break
             if not func_dict[prefix][func_name]:
                 continue
-            # if printed_prefixes:
-            #     # Add some space between different check prefixes.
-            #     output_lines.append('')
+            if printed_prefixes:
+                # Add some space between different check prefixes.
+                indent = len(output_lines[-1]) - len(output_lines[-1].lstrip(" "))
+                output_lines.append(" "*indent + ";")
             printed_prefixes.add(prefix)
             log("Adding {} lines for {}".format(prefix, func_name), args.verbose)
             add_check_lines(
@@ -333,9 +334,9 @@ def mangle_vreg(opcode, current_names):
 
 
 def should_add_line_to_output(input_line, prefix_set):
-    # Skip any check lines that we're handling.
+    # Skip any check lines that we're handling as well as comments
     m = common.CHECK_RE.match(input_line)
-    if m and m.group(1) in prefix_set:
+    if (m and m.group(1) in prefix_set) or re.search("^[ \t]*;", input_line):
         return False
     return True