diff --git a/clang/test/Driver/DTLTO/dtlto.c b/clang/test/Driver/DTLTO/dtlto.c index c7804c9c918db..66299c890e4b3 100644 --- a/clang/test/Driver/DTLTO/dtlto.c +++ b/clang/test/Driver/DTLTO/dtlto.c @@ -6,14 +6,16 @@ /// Check DTLTO options are forwarded to the linker. /// Check that options are forwarded as expected with --thinlto-distributor=. +// RUN: %python %S/filename.py %clang > %t_forward.log // RUN: %clang -flto=thin %s -### -fuse-ld=lld --target=x86_64-linux-gnu \ // RUN: -Xthinlto-distributor=a1 -Xthinlto-distributor=a2,a3 \ -// RUN: -fthinlto-distributor=d.exe -Werror 2>&1 | \ -// RUN: FileCheck %s --check-prefix=FORWARD +// RUN: -fthinlto-distributor=d.exe -Werror >>%t_forward.log 2>&1 +// RUN: FileCheck %s --input-file=%t_forward.log --check-prefix=FORWARD +// FORWARD: filename.py:[[CLANG:.*]] // FORWARD: ld.lld // FORWARD-SAME: "--thinlto-distributor=d.exe" -// FORWARD-SAME: "--thinlto-remote-compiler={{.*}}clang{{[^\"]*}}" +// FORWARD-SAME: "--thinlto-remote-compiler={{.*}}[[CLANG]]" // FORWARD-SAME: "--thinlto-distributor-arg=a1" // FORWARD-SAME: "--thinlto-distributor-arg=a2" // FORWARD-SAME: "--thinlto-distributor-arg=a3" @@ -22,8 +24,8 @@ /// that a warning is issued for unused -Xthinlto-distributor options. // RUN: %clang -flto=thin %s -### -fuse-ld=lld --target=x86_64-linux-gnu \ // RUN: -Xthinlto-distributor=a1 -Xthinlto-distributor=a2,a3 2>&1 | \ -// RUN: FileCheck %s --check-prefix=NODIST --implicit-check-not=distributor \ -// RUN: --implicit-check-not=remote-compiler +// RUN: FileCheck %s --check-prefix=NODIST --implicit-check-not=distributor \ +// RUN: --implicit-check-not=remote-compiler // NODIST: warning: argument unused during compilation: '-Xthinlto-distributor=a1' // NODIST: warning: argument unused during compilation: '-Xthinlto-distributor=a2,a3' @@ -31,10 +33,11 @@ /// Check the expected arguments are forwarded by default with only /// --thinlto-distributor=. +// RUN: %python %S/filename.py %clang > %t_default.log // RUN: %clang -flto=thin %s -### -fuse-ld=lld --target=x86_64-linux-gnu \ -// RUN: -fthinlto-distributor=d.exe -Werror 2>&1 | \ -// RUN: FileCheck %s --check-prefix=DEFAULT --implicit-check-not=distributor \ -// RUN: --implicit-check-not=remote-compiler +// RUN: -fthinlto-distributor=d.exe -Werror >>%t_default.log 2>&1 +// RUN: FileCheck %s --input-file=%t_default.log --check-prefix=DEFAULT \ +// RUN: --implicit-check-not=distributor --implicit-check-not=remote-compiler // DEFAULT: ld.lld // DEFAULT-SAME: "--thinlto-distributor=d.exe" @@ -42,10 +45,11 @@ /// Check that nothing is forwarded when the compiler is not in LTO mode, and that /// appropriate unused option warnings are issued. +// RUN: %python %S/filename.py %clang > %t_noflto.log // RUN: %clang %s -### -fuse-ld=lld --target=x86_64-linux-gnu \ -// RUN: -fthinlto-distributor=d.exe 2>&1 | \ -// RUN: FileCheck %s --check-prefix=NOFLTO --implicit-check-not=distributor \ -// RUN: --implicit-check-not=remote-compiler +// RUN: -fthinlto-distributor=d.exe >>%t_noflto.log 2>&1 +// RUN: FileCheck %s --input-file=%t_noflto.log --check-prefix=NOFLTO \ +// RUN: --implicit-check-not=distributor --implicit-check-not=remote-compiler // NOFLTO: warning: argument unused during compilation: '-fthinlto-distributor=d.exe' // NOFLTO: ld.lld diff --git a/clang/test/Driver/DTLTO/filename.py b/clang/test/Driver/DTLTO/filename.py new file mode 100644 index 0000000000000..df1aeb6682543 --- /dev/null +++ b/clang/test/Driver/DTLTO/filename.py @@ -0,0 +1,4 @@ +from pathlib import Path +import sys + +print(f"filename.py:{Path(sys.argv[1]).resolve().name}") diff --git a/clang/test/Driver/DTLTO/ps5-dtlto.c b/clang/test/Driver/DTLTO/ps5-dtlto.c index 39acfc0245a19..b52765db5b1c7 100644 --- a/clang/test/Driver/DTLTO/ps5-dtlto.c +++ b/clang/test/Driver/DTLTO/ps5-dtlto.c @@ -6,14 +6,16 @@ /// Check DTLTO options are forwarded to the linker. /// Check that options are forwarded as expected with --thinlto-distributor=. +// RUN: %python %S/filename.py %clang > %t_forward.log // RUN: %clang -flto=thin %s -### --target=x86_64-sie-ps5 \ // RUN: -Xthinlto-distributor=a1 -Xthinlto-distributor=a2,a3 \ -// RUN: -fthinlto-distributor=d.exe -Werror 2>&1 | \ -// RUN: FileCheck %s --check-prefix=FORWARD +// RUN: -fthinlto-distributor=d.exe -Werror >>%t_forward.log 2>&1 +// RUN: FileCheck %s --input-file=%t_forward.log --check-prefix=FORWARD +// FORWARD: filename.py:[[CLANG:.*]] // FORWARD: prospero-lld // FORWARD-SAME: "--thinlto-distributor=d.exe" -// FORWARD-SAME: "--thinlto-remote-compiler={{.*}}clang{{[^\"]*}}" +// FORWARD-SAME: "--thinlto-remote-compiler={{.*}}[[CLANG]]" // FORWARD-SAME: "--thinlto-distributor-arg=a1" // FORWARD-SAME: "--thinlto-distributor-arg=a2" // FORWARD-SAME: "--thinlto-distributor-arg=a3" @@ -22,8 +24,8 @@ /// that a warning is issued for unused -Xthinlto-distributor options. // RUN: %clang -flto=thin %s -### --target=x86_64-sie-ps5 \ // RUN: -Xthinlto-distributor=a1 -Xthinlto-distributor=a2,a3 2>&1 | \ -// RUN: FileCheck %s --check-prefix=NODIST --implicit-check-not=distributor \ -// RUN: --implicit-check-not=remote-compiler +// RUN: FileCheck %s --check-prefix=NODIST --implicit-check-not=distributor \ +// RUN: --implicit-check-not=remote-compiler // NODIST: warning: argument unused during compilation: '-Xthinlto-distributor=a1' // NODIST: warning: argument unused during compilation: '-Xthinlto-distributor=a2,a3' @@ -31,18 +33,21 @@ /// Check the expected arguments are forwarded by default with only /// --thinlto-distributor=. +// RUN: %python %S/filename.py %clang > %t_default.log // RUN: %clang -flto=thin %s -### --target=x86_64-sie-ps5 \ -// RUN: -fthinlto-distributor=d.exe -Werror 2>&1 | \ -// RUN: FileCheck %s --check-prefix=DEFAULT --implicit-check-not=distributor \ -// RUN: --implicit-check-not=remote-compiler +// RUN: -fthinlto-distributor=d.exe -Werror >>%t_default.log 2>&1 +// RUN: FileCheck %s --input-file=%t_default.log --check-prefix=DEFAULT \ +// RUN: --implicit-check-not=distributor --implicit-check-not=remote-compiler +// DEFAULT: filename.py:[[CLANG:.*]] // DEFAULT: prospero-lld // DEFAULT-SAME: "--thinlto-distributor=d.exe" -// DEFAULT-SAME: "--thinlto-remote-compiler={{[^"]+}}" +// DEFAULT-SAME: "--thinlto-remote-compiler={{.*}}[[CLANG]]" /// Check that the arguments are forwarded unconditionally even when the /// compiler is not in LTO mode. +// RUN: %python %S/filename.py %clang > %t_noflto.log // RUN: %clang %s -### --target=x86_64-sie-ps5 \ -// RUN: -fthinlto-distributor=d.exe -Werror 2>&1 | \ -// RUN: FileCheck %s --check-prefix=DEFAULT --implicit-check-not=distributor \ -// RUN: --implicit-check-not=remote-compiler +// RUN: -fthinlto-distributor=d.exe -Werror >>%t_noflto.log 2>&1 +// RUN: FileCheck %s --input-file=%t_noflto.log --check-prefix=DEFAULT \ +// RUN: --implicit-check-not=distributor --implicit-check-not=remote-compiler