[clang] a24644b - Revert "Run non-filechecked commands in update_cc_test_checks.py"
Jon Roelofs via cfe-commits
cfe-commits at lists.llvm.org
Mon Mar 8 17:29:39 PST 2021
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:
More information about the cfe-commits
mailing list