mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-25 04:02:41 +01:00
[Utils] Add a switch controlling prefix warnings in UpdateTestChecks
The switch controls both unused prefix warnings, and warnings about functions which differ under different runs for a prefix, and, thus, end up not having asserts for that prefix. (If the latter case spans to all functions, then the former case kicks in) The switch is on by default, and can be disabled. Differential Revision: https://reviews.llvm.org/D95829
This commit is contained in:
parent
29acfb48a9
commit
ea66bf2f6b
@ -3,7 +3,9 @@
|
||||
# RUN: cp -f %S/Inputs/common-label-different-bodies-1.ll %t-1.ll
|
||||
# RUN: cp -f %S/Inputs/common-label-different-bodies-2.ll %t-2.ll
|
||||
# RUN: cp -f %S/Inputs/common-label-different-bodies-3.ll %t-3.ll
|
||||
# RUN: %update_llc_test_checks %t-1.ll
|
||||
# RUN: cp -f %S/Inputs/common-label-different-bodies-3.ll %t-4.ll
|
||||
# RUN: %update_llc_test_checks %t-1.ll 2>&1 | FileCheck %s --check-prefix=WARNINGS
|
||||
# RUN: %update_llc_test_checks --disable-verbose-prefix-warnings %t-4.ll 2>&1 | FileCheck %s --check-prefix=NOWARNINGS --allow-empty
|
||||
# RUN: %update_llc_test_checks %t-2.ll
|
||||
# RUN: %update_llc_test_checks %t-3.ll
|
||||
# RUN: FileCheck --input-file=%t-1.ll %s
|
||||
@ -11,4 +13,7 @@
|
||||
# RUN: FileCheck --input-file=%t-3.ll %s
|
||||
|
||||
# CHECK: B-LABEL: fold_v2i64
|
||||
# CHECK-NOT: A-LABEL: fold_v2i64
|
||||
# CHECK-NOT: A-LABEL: fold_v2i64
|
||||
# WARNINGS: WARNING: Function fold_v2i64 had conflicting output from different RUN lines for prefix A
|
||||
# WARNINGS: WARNING: Prefix A had conflicting output from different RUN lines for all functions
|
||||
# NOWARNINGS-NOT: WARNING
|
@ -30,9 +30,14 @@ def parse_commandline_args(parser):
|
||||
help='Activate CHECK line generation from this point forward')
|
||||
parser.add_argument('--disable', action='store_false', dest='enabled',
|
||||
help='Deactivate CHECK line generation from this point forward')
|
||||
parser.add_argument('--disable-verbose-prefix-warnings', action='store_false',
|
||||
default=True,
|
||||
dest='verbose_prefix_warnings',
|
||||
help='Disable warnings about unused prefixes.')
|
||||
args = parser.parse_args()
|
||||
global _verbose
|
||||
global _verbose, _verbose_prefix_warnings
|
||||
_verbose = args.verbose
|
||||
_verbose_prefix_warnings = args.verbose_prefix_warnings
|
||||
return args
|
||||
|
||||
|
||||
@ -272,8 +277,9 @@ class FunctionTestBuilder:
|
||||
self._func_order.update({prefix: []})
|
||||
|
||||
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,))
|
||||
if _verbose_prefix_warnings:
|
||||
for prefix in self._get_failed_prefixes():
|
||||
warn('Prefix %s had conflicting output from different RUN lines for all functions' % (prefix,))
|
||||
return self._func_dict
|
||||
|
||||
def func_order(self):
|
||||
@ -329,6 +335,9 @@ class FunctionTestBuilder:
|
||||
# so the body can't be common accross RUN lines. We use None to
|
||||
# indicate that.
|
||||
self._func_dict[prefix][func] = None
|
||||
if _verbose_prefix_warnings:
|
||||
warn('Function %s had conflicting output from different RUN lines for prefix %s' % (
|
||||
func, prefix))
|
||||
continue
|
||||
|
||||
self._func_dict[prefix][func] = function_body(
|
||||
|
Loading…
Reference in New Issue
Block a user