[llvm] r326284 - update_mir_test_checks: Drop support for vreg block checks

Justin Bogner via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 27 16:44:46 PST 2018


Author: bogner
Date: Tue Feb 27 16:44:46 2018
New Revision: 326284

URL: http://llvm.org/viewvc/llvm-project?rev=326284&view=rev
Log:
update_mir_test_checks: Drop support for vreg block checks

Since vregs are printed in the instruction stream now, checking the
vreg block is always redundant. Remove the temporary feature that
allowed us to do that.

This reverts r316134

Modified:
    llvm/trunk/utils/update_mir_test_checks.py

Modified: llvm/trunk/utils/update_mir_test_checks.py
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/update_mir_test_checks.py?rev=326284&r1=326283&r2=326284&view=diff
==============================================================================
--- llvm/trunk/utils/update_mir_test_checks.py (original)
+++ llvm/trunk/utils/update_mir_test_checks.py Tue Feb 27 16:44:46 2018
@@ -41,7 +41,6 @@ VREG_DEF_RE = re.compile(
     r'^ *(?P<vregs>{0}(?:, {0})*) '
     r'= (?P<opcode>[A-Zt][A-Za-z0-9_]+)'.format(VREG_RE.pattern))
 MIR_PREFIX_DATA_RE = re.compile(r'^ *(;|bb.[0-9].*: *$|[a-z]+:( |$)|$)')
-VREG_CLASS_RE = re.compile(r'^ *- *{ id: ([0-9]+), class: ([a-z0-9_]+)', re.M)
 
 IR_FUNC_NAME_RE = re.compile(
     r'^\s*define\s+(?:internal\s+)?[^@]*@(?P<func>[A-Za-z0-9_.]+)\s*\(')
@@ -51,7 +50,6 @@ MIR_FUNC_RE = re.compile(
     r'^---$'
     r'\n'
     r'^ *name: *(?P<func>[A-Za-z0-9_.-]+)$'
-    r'(?:.*?(?P<vregs>^ *registers: *(?:\n *- {[^\n]+$)*))?'
     r'.*?'
     r'^ *body: *\|\n'
     r'(?P<body>.*?)\n'
@@ -196,11 +194,10 @@ def build_function_body_dictionary(test,
                 warn('Found conflicting asm for prefix: {}'.format(prefix),
                      test_file=test)
             func_dict[prefix][func] = body
-            func_dict[prefix]['{}:vregs'.format(func)] = m.group('vregs')
 
 
 def add_checks_for_function(test, output_lines, run_list, func_dict, func_name,
-                            add_vreg_checks, single_bb, verbose=False):
+                            single_bb, verbose=False):
     printed_prefixes = set()
     for run in run_list:
         for prefix in run.prefixes:
@@ -213,17 +210,14 @@ def add_checks_for_function(test, output
             #     output_lines.append('')
             printed_prefixes.add(prefix)
             log('Adding {} lines for {}'.format(prefix, func_name), verbose)
-            vregs = None
-            if add_vreg_checks:
-                vregs = func_dict[prefix]['{}:vregs'.format(func_name)]
             add_check_lines(test, output_lines, prefix, func_name, single_bb,
-                            func_dict[prefix][func_name].splitlines(), vregs)
+                            func_dict[prefix][func_name].splitlines())
             break
     return output_lines
 
 
 def add_check_lines(test, output_lines, prefix, func_name, single_bb,
-                    func_body, vreg_data):
+                    func_body):
     if single_bb:
         # Don't bother checking the basic block label for a single BB
         func_body.pop(0)
@@ -240,12 +234,6 @@ def add_check_lines(test, output_lines,
 
     output_lines.append('{}-LABEL: name: {}'.format(check, func_name))
 
-    if vreg_data:
-        output_lines.append('{}: registers:'.format(check))
-        for m in VREG_CLASS_RE.finditer(vreg_data):
-            output_lines.append('{}-NEXT: id: {}, class: {}'.format(
-                check, m.group(1), m.group(2)))
-
     vreg_map = {}
     for func_line in func_body:
         if not func_line.strip():
@@ -304,8 +292,7 @@ def should_add_line_to_output(input_line
     return True
 
 
-def update_test_file(llc, test, remove_common_prefixes=False,
-                     add_vreg_checks=False, verbose=False):
+def update_test_file(llc, test, remove_common_prefixes=False, verbose=False):
     log('Scanning for RUN lines in test file: {}'.format(test), verbose)
     with open(test) as fd:
         input_lines = [l.rstrip() for l in fd]
@@ -384,15 +371,15 @@ def update_test_file(llc, test, remove_c
                     continue
                 state = 'mir function body'
                 add_checks_for_function(test, output_lines, run_list,
-                                        func_dict, func_name, add_vreg_checks,
-                                        single_bb=False, verbose=verbose)
+                                        func_dict, func_name, single_bb=False,
+                                        verbose=verbose)
         elif state == 'mir function prefix':
             m = MIR_PREFIX_DATA_RE.match(input_line)
             if not m:
                 state = 'mir function body'
                 add_checks_for_function(test, output_lines, run_list,
-                                        func_dict, func_name, add_vreg_checks,
-                                        single_bb=True, verbose=verbose)
+                                        func_dict, func_name, single_bb=True,
+                                        verbose=verbose)
 
             if should_add_line_to_output(input_line, prefix_set):
                 output_lines.append(input_line)
@@ -436,15 +423,13 @@ def main():
     parser.add_argument('--remove-common-prefixes', action='store_true',
                         help='Remove existing check lines whose prefixes are '
                              'shared between multiple commands')
-    parser.add_argument('--add-vreg-checks', action='store_true',
-                        help='Add checks for the "registers:" block')
     parser.add_argument('tests', nargs='+')
     args = parser.parse_args()
 
     for test in args.tests:
         try:
             update_test_file(args.llc, test, args.remove_common_prefixes,
-                             args.add_vreg_checks, verbose=args.verbose)
+                             verbose=args.verbose)
         except Exception:
             warn('Error processing file', test_file=test)
             raise




More information about the llvm-commits mailing list