[UpdateTestUtils] Print test filename when complaining about conflicting prefix
authorRoman Lebedev <lebedev.ri@gmail.com>
Sun, 20 Jun 2021 10:14:33 +0000 (13:14 +0300)
committerRoman Lebedev <lebedev.ri@gmail.com>
Sun, 20 Jun 2021 11:12:39 +0000 (14:12 +0300)
Now that FileCheck eagerly complains when prefixes are unused,
the update script does the same, and  is becoming very common
to need to drop some prefixes, yet figuring out the file
it complains about isn't obvious unless it actually tells us.

llvm/utils/UpdateTestChecks/common.py
llvm/utils/update_analyze_test_checks.py
llvm/utils/update_cc_test_checks.py
llvm/utils/update_llc_test_checks.py
llvm/utils/update_test_checks.py

index 358a06d..80b0c84 100644 (file)
@@ -291,11 +291,12 @@ class function_body(object):
     return self.scrub
 
 class FunctionTestBuilder:
-  def __init__(self, run_list, flags, scrubber_args):
+  def __init__(self, run_list, flags, scrubber_args, path):
     self._verbose = flags.verbose
     self._record_args = flags.function_signature
     self._check_attributes = flags.check_attributes
     self._scrubber_args = scrubber_args
+    self._path = path
     # Strip double-quotes if input was read by UTC_ARGS
     self._replace_value_regex = list(map(lambda x: x.strip('"'), flags.replace_value_regex))
     self._func_dict = {}
@@ -309,7 +310,7 @@ class FunctionTestBuilder:
 
   def finish_and_get_func_dict(self):
     for prefix in self._get_failed_prefixes():
-      warn('Prefix %s had conflicting output from different RUN lines for all functions' % (prefix,))
+      warn('Prefix %s had conflicting output from different RUN lines for all functions in test %s' % (prefix,self._path,))
     return self._func_dict
 
   def func_order(self):
index 2faa08d..6c5bc52 100755 (executable)
@@ -115,7 +115,8 @@ def main():
             'function_signature': False,
             'check_attributes': False,
             'replace_value_regex': []}),
-      scrubber_args = [])
+      scrubber_args = [],
+      path=test)
 
     for prefixes, opt_args in prefix_list:
       common.debug('Extracted opt cmd:', opt_basename, opt_args, file=sys.stderr)
index cbe5876..068a9e4 100755 (executable)
@@ -275,7 +275,8 @@ def main():
     builder = common.FunctionTestBuilder(
       run_list=filecheck_run_list,
       flags=ti.args,
-      scrubber_args=[])
+      scrubber_args=[],
+      path=ti.path)
 
     for prefixes, args, extra_commands, triple_in_cmd in run_list:
       # Execute non-filechecked runline.
index d5ff299..7e20a58 100755 (executable)
@@ -114,7 +114,8 @@ def main():
             'function_signature': False,
             'check_attributes': False,
             'replace_value_regex': []}),
-        scrubber_args=[ti.args])
+        scrubber_args=[ti.args],
+        path=ti.path)
 
     for prefixes, llc_tool, llc_args, preprocess_cmd, triple_in_cmd, march_in_cmd in run_list:
       common.debug('Extracted LLC cmd:', llc_tool, llc_args)
index e240c6c..9ac95cc 100755 (executable)
@@ -113,7 +113,8 @@ def main():
     builder = common.FunctionTestBuilder(
       run_list=prefix_list,
       flags=ti.args,
-      scrubber_args=[])
+      scrubber_args=[],
+      path=ti.path)
 
     for prefixes, opt_args, preprocess_cmd in prefix_list:
       common.debug('Extracted opt cmd: ' + opt_basename + ' ' + opt_args)