Author: Jon Roelofs Date: 2021-03-08T17:26:24-08:00 New Revision: a24644bb1ce09b40c2d751569dd5bb37ea9c995d
URL: https://github.com/llvm/llvm-project/commit/a24644bb1ce09b40c2d751569dd5bb37ea9c995d DIFF: https://github.com/llvm/llvm-project/commit/a24644bb1ce09b40c2d751569dd5bb37ea9c995d.diff LOG: Revert "Run non-filechecked commands in update_cc_test_checks.py" This reverts commit 60d4c73b30a0e324c6ae314722eb036f70f4b03a. The new test is broken on macos hosts. Discussion here: https://reviews.llvm.org/D97068#2611269 https://reviews.llvm.org/D97068#2612675 ... revert to green. Added: Modified: llvm/utils/update_cc_test_checks.py Removed: clang/test/utils/update_cc_test_checks/Inputs/exec-all-runlines.c clang/test/utils/update_cc_test_checks/Inputs/exec-all-runlines.c.expected clang/test/utils/update_cc_test_checks/exec-all-runlines.test ################################################################################ diff --git a/clang/test/utils/update_cc_test_checks/Inputs/exec-all-runlines.c b/clang/test/utils/update_cc_test_checks/Inputs/exec-all-runlines.c deleted file mode 100644 index bf18179392dc..000000000000 --- a/clang/test/utils/update_cc_test_checks/Inputs/exec-all-runlines.c +++ /dev/null @@ -1,10 +0,0 @@ -// Check that the non-clang/non-filechecked runlines execute -// RUN: cp %s %s.copy.c -// RUN: %clang_cc1 -fopenmp %s.copy.c -emit-llvm-bc -o %t-host.bc -// RUN: %clang_cc1 -fopenmp -fopenmp-host-ir-file-path %t-host.bc %s.copy.c -emit-llvm -o - | FileCheck %s - -void use(int); - -void test(int a) -{ -} diff --git a/clang/test/utils/update_cc_test_checks/Inputs/exec-all-runlines.c.expected b/clang/test/utils/update_cc_test_checks/Inputs/exec-all-runlines.c.expected deleted file mode 100644 index ffc8caac0f23..000000000000 --- a/clang/test/utils/update_cc_test_checks/Inputs/exec-all-runlines.c.expected +++ /dev/null @@ -1,17 +0,0 @@ -// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py -// Check that the non-clang/non-filechecked runlines execute -// RUN: cp %s %s.copy.c -// RUN: %clang_cc1 -fopenmp %s.copy.c -emit-llvm-bc -o %t-host.bc -// RUN: %clang_cc1 -fopenmp -fopenmp-host-ir-file-path %t-host.bc %s.copy.c -emit-llvm -o - | FileCheck %s - -void use(int); - -// CHECK-LABEL: @test( -// CHECK-NEXT: entry: -// CHECK-NEXT: [[A_ADDR:%.*]] = alloca i32, align 4 -// CHECK-NEXT: store i32 [[A:%.*]], i32* [[A_ADDR]], align 4 -// CHECK-NEXT: ret void -// -void test(int a) -{ -} diff --git a/clang/test/utils/update_cc_test_checks/exec-all-runlines.test b/clang/test/utils/update_cc_test_checks/exec-all-runlines.test deleted file mode 100644 index caf39934266c..000000000000 --- a/clang/test/utils/update_cc_test_checks/exec-all-runlines.test +++ /dev/null @@ -1,8 +0,0 @@ -## Test that non-clang/non-filechecked runlines execute - -# RUN: cp %S/Inputs/exec-all-runlines.c %t-generated.c && %update_cc_test_checks %t-generated.c -# RUN: diff -u %S/Inputs/exec-all-runlines.c.expected %t-generated.c - -## Check that re-running update_cc_test_checks doesn't change the output -# RUN: %update_cc_test_checks %t-generated.c -# RUN: diff -u %S/Inputs/exec-all-runlines.c.expected %t-generated.c diff --git a/llvm/utils/update_cc_test_checks.py b/llvm/utils/update_cc_test_checks.py index d084bc6d0795..e5ca91502cf9 100755 --- a/llvm/utils/update_cc_test_checks.py +++ b/llvm/utils/update_cc_test_checks.py @@ -203,14 +203,6 @@ def get_function_body(builder, args, filename, clang_args, extra_commands, 'are discouraged in Clang testsuite.', file=sys.stderr) sys.exit(1) -def exec_run_line(exe): - popen = subprocess.Popen(exe, stdout=subprocess.PIPE, stderr=subprocess.PIPE, universal_newlines=True) - stdout, stderr = popen.communicate() - if popen.returncode != 0: - sys.stderr.write('Failed to run ' + ' '.join(exe) + '\n') - sys.stderr.write(stderr) - sys.stderr.write(stdout) - sys.exit(3) def main(): initial_args, parser = config() @@ -229,31 +221,25 @@ def main(): if m: triple_in_cmd = m.groups()[0] - # Parse executable args. - exec_args = shlex.split(commands[0]) - # Execute non-clang runline. - if exec_args[0] not in SUBST: - print('NOTE: Executing non-clang RUN line: ' + l, file=sys.stderr) - # Replace %s by `filename`. - exec_args = [i.replace('%s', ti.path) if '%s' in i else i for i in exec_args] - exec_run_line(exec_args) + # Apply %clang substitution rule, replace %s by `filename`, and append args.clang_args + clang_args = shlex.split(commands[0]) + if clang_args[0] not in SUBST: + print('WARNING: Skipping non-clang RUN line: ' + l, file=sys.stderr) continue - # This is a clang runline, apply %clang substitution rule, replace %s by `filename`, - # and append args.clang_args - clang_args = exec_args clang_args[0:1] = SUBST[clang_args[0]] - clang_args = [i.replace('%s', ti.path) if '%s' in i else i for i in clang_args] + ti.args.clang_args + clang_args = [ti.path if i == '%s' else i for i in clang_args] + ti.args.clang_args + + # Permit piping the output through opt + if not (len(commands) == 2 or + (len(commands) == 3 and commands[1].startswith('opt'))): + print('WARNING: Skipping non-clang RUN line: ' + l, file=sys.stderr) # Extract -check-prefix in FileCheck args filecheck_cmd = commands[-1] common.verify_filecheck_prefixes(filecheck_cmd) if not filecheck_cmd.startswith('FileCheck '): - print('NOTE: Executing non-FileChecked clang RUN line: ' + l, file=sys.stderr) - # Execute non-filechecked clang runline. - exe = [ti.args.clang] + clang_args - exec_run_line(exe) + print('WARNING: Skipping non-FileChecked RUN line: ' + l, file=sys.stderr) continue - check_prefixes = [item for m in common.CHECK_PREFIX_RE.finditer(filecheck_cmd) for item in m.group(1).split(',')] if not check_prefixes: _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits