From af8205d0eb47b416b6865488056797f4162321e4 Mon Sep 17 00:00:00 2001 From: Wael Yehia Date: Mon, 8 Aug 2022 14:04:29 +0000 Subject: [PATCH] Revert "XFAIL some PGO tests on AIX until the new linker becomes publicly available." AIX 7.2 TL5 SP4 and AIX 7.3 TL0 SP2 have been released as of now. The linker in these OS versions recognizes and properly supports __start_SECNAME and __stop_SECNAME symbols which are needed for PGO. This reverts commit 93bb2f16e85d2d4c8d3ddadebd99fc0fe26d974b. --- compiler-rt/test/profile/Posix/gcov-destructor.c | 1 - compiler-rt/test/profile/Posix/gcov-execlp.c | 1 - compiler-rt/test/profile/Posix/gcov-fork.c | 1 - compiler-rt/test/profile/Posix/instrprof-gcov-parallel.test | 1 - compiler-rt/test/profile/Posix/instrprof-get-filename-merge-mode.c | 1 - compiler-rt/test/profile/gcov-__gcov_flush-terminate.c | 1 - compiler-rt/test/profile/gcov-basic.c | 1 - compiler-rt/test/profile/gcov-complex-line.c | 1 - compiler-rt/test/profile/gcov-dump-and-remove.c | 1 - compiler-rt/test/profile/infinite_loop.c | 1 - compiler-rt/test/profile/instrprof-coverage.c | 1 - compiler-rt/test/profile/instrprof-gcov-exceptions.test | 1 - compiler-rt/test/profile/instrprof-gcov-multiple-bbs-single-line.test | 1 - compiler-rt/test/profile/instrprof-gcov-multithread_fork.test | 1 - compiler-rt/test/profile/instrprof-gcov-one-line-function.test | 1 - compiler-rt/test/profile/instrprof-gcov-switch.test | 1 - compiler-rt/test/profile/instrprof-gcov-two-objects.test | 1 - compiler-rt/test/profile/instrprof-get-filename.c | 1 - compiler-rt/test/profile/instrprof-icall-promo.test | 1 - compiler-rt/test/profile/instrprof-merge-entry-cover.c | 1 - compiler-rt/test/profile/instrprof-path.c | 1 - compiler-rt/test/profile/instrprof-set-dir-mode.c | 1 - compiler-rt/test/profile/runtime_infinite.c | 1 - 23 files changed, 23 deletions(-) diff --git a/compiler-rt/test/profile/Posix/gcov-destructor.c b/compiler-rt/test/profile/Posix/gcov-destructor.c index 8cd9712..c6fa144 100644 --- a/compiler-rt/test/profile/Posix/gcov-destructor.c +++ b/compiler-rt/test/profile/Posix/gcov-destructor.c @@ -1,4 +1,3 @@ -// XFAIL: aix /// Test that destructors and destructors whose priorities are greater than 100 are tracked. // RUN: mkdir -p %t.dir && cd %t.dir // RUN: %clang --coverage %s -o %t diff --git a/compiler-rt/test/profile/Posix/gcov-execlp.c b/compiler-rt/test/profile/Posix/gcov-execlp.c index 805710e..362f595 100644 --- a/compiler-rt/test/profile/Posix/gcov-execlp.c +++ b/compiler-rt/test/profile/Posix/gcov-execlp.c @@ -1,4 +1,3 @@ -// XFAIL: aix /// A basic block with fork/exec* is split. .gcda is flushed immediately before /// fork/exec* so the lines before exec* are counted once while succeeding /// lines are not counted. diff --git a/compiler-rt/test/profile/Posix/gcov-fork.c b/compiler-rt/test/profile/Posix/gcov-fork.c index e389ac5..e66690a 100644 --- a/compiler-rt/test/profile/Posix/gcov-fork.c +++ b/compiler-rt/test/profile/Posix/gcov-fork.c @@ -1,4 +1,3 @@ -// XFAIL: aix /// A basic block with fork/exec* is split. .gcda is flushed immediately before /// fork/exec* so the lines before fork are counted once while succeeding /// lines are counted twice. diff --git a/compiler-rt/test/profile/Posix/instrprof-gcov-parallel.test b/compiler-rt/test/profile/Posix/instrprof-gcov-parallel.test index dce21a1..0c7198e3 100644 --- a/compiler-rt/test/profile/Posix/instrprof-gcov-parallel.test +++ b/compiler-rt/test/profile/Posix/instrprof-gcov-parallel.test @@ -1,4 +1,3 @@ -XFAIL: aix RUN: mkdir -p %t.d RUN: cd %t.d diff --git a/compiler-rt/test/profile/Posix/instrprof-get-filename-merge-mode.c b/compiler-rt/test/profile/Posix/instrprof-get-filename-merge-mode.c index c01177b..477adcd 100644 --- a/compiler-rt/test/profile/Posix/instrprof-get-filename-merge-mode.c +++ b/compiler-rt/test/profile/Posix/instrprof-get-filename-merge-mode.c @@ -1,4 +1,3 @@ -// XFAIL: aix // Test __llvm_profile_get_filename when the on-line merging mode is enabled. // // RUN: echo get_filename_from_DSO > shr.exp diff --git a/compiler-rt/test/profile/gcov-__gcov_flush-terminate.c b/compiler-rt/test/profile/gcov-__gcov_flush-terminate.c index e96d5d0..649538d 100644 --- a/compiler-rt/test/profile/gcov-__gcov_flush-terminate.c +++ b/compiler-rt/test/profile/gcov-__gcov_flush-terminate.c @@ -1,4 +1,3 @@ -// XFAIL: aix /// https://bugs.llvm.org/show_bug.cgi?id=38067 /// An abnormal exit does not clear execution counts of subsequent instructions. // RUN: mkdir -p %t.dir && cd %t.dir diff --git a/compiler-rt/test/profile/gcov-basic.c b/compiler-rt/test/profile/gcov-basic.c index 81c44df..0d8be6d 100644 --- a/compiler-rt/test/profile/gcov-basic.c +++ b/compiler-rt/test/profile/gcov-basic.c @@ -1,4 +1,3 @@ -// XFAIL: aix // RUN: mkdir -p %t.dir && cd %t.dir /// gcov 3.4 redesigned the format and changed the extension from .da to .gcda diff --git a/compiler-rt/test/profile/gcov-complex-line.c b/compiler-rt/test/profile/gcov-complex-line.c index 692b96d..86286c4 100644 --- a/compiler-rt/test/profile/gcov-complex-line.c +++ b/compiler-rt/test/profile/gcov-complex-line.c @@ -1,4 +1,3 @@ -// XFAIL: aix // This test checks that the cycle detection algorithm in llvm-cov is able to // handle complex block graphs by skipping zero count cycles. // diff --git a/compiler-rt/test/profile/gcov-dump-and-remove.c b/compiler-rt/test/profile/gcov-dump-and-remove.c index 3961915..c35640f 100644 --- a/compiler-rt/test/profile/gcov-dump-and-remove.c +++ b/compiler-rt/test/profile/gcov-dump-and-remove.c @@ -1,4 +1,3 @@ -// XFAIL: aix /// Test we close file handle on flush, so the .gcda file can be deleted on /// Windows while the process is still running. In addition, test we create /// a new .gcda on flush, so there is a file when the process exists. diff --git a/compiler-rt/test/profile/infinite_loop.c b/compiler-rt/test/profile/infinite_loop.c index 4178fe4..0e3981c 100644 --- a/compiler-rt/test/profile/infinite_loop.c +++ b/compiler-rt/test/profile/infinite_loop.c @@ -1,4 +1,3 @@ -// XFAIL: aix // RUN: %clang_pgogen -O2 -o %t %s // RUN: env LLVM_PROFILE_FILE=%t.profraw %run %t // RUN: llvm-profdata show -function main -counts %t.profraw| FileCheck %s diff --git a/compiler-rt/test/profile/instrprof-coverage.c b/compiler-rt/test/profile/instrprof-coverage.c index 88b4698..3f3cd18 100644 --- a/compiler-rt/test/profile/instrprof-coverage.c +++ b/compiler-rt/test/profile/instrprof-coverage.c @@ -1,4 +1,3 @@ -// XFAIL: aix // RUN: %clang_pgogen -mllvm -pgo-function-entry-coverage %s -o %t.out // RUN: env LLVM_PROFILE_FILE=%t.profraw %run %t.out // RUN: llvm-profdata merge -o %t.profdata %t.profraw diff --git a/compiler-rt/test/profile/instrprof-gcov-exceptions.test b/compiler-rt/test/profile/instrprof-gcov-exceptions.test index f7910b2..a3dcc55 100644 --- a/compiler-rt/test/profile/instrprof-gcov-exceptions.test +++ b/compiler-rt/test/profile/instrprof-gcov-exceptions.test @@ -1,4 +1,3 @@ -XFAIL: aix RUN: mkdir -p %t.d RUN: cd %t.d diff --git a/compiler-rt/test/profile/instrprof-gcov-multiple-bbs-single-line.test b/compiler-rt/test/profile/instrprof-gcov-multiple-bbs-single-line.test index cc1dc34..66b6429 100644 --- a/compiler-rt/test/profile/instrprof-gcov-multiple-bbs-single-line.test +++ b/compiler-rt/test/profile/instrprof-gcov-multiple-bbs-single-line.test @@ -1,4 +1,3 @@ -XFAIL: aix RUN: mkdir -p %t.d RUN: cd %t.d diff --git a/compiler-rt/test/profile/instrprof-gcov-multithread_fork.test b/compiler-rt/test/profile/instrprof-gcov-multithread_fork.test index e05ef2c..f5ecb1e8d 100644 --- a/compiler-rt/test/profile/instrprof-gcov-multithread_fork.test +++ b/compiler-rt/test/profile/instrprof-gcov-multithread_fork.test @@ -1,4 +1,3 @@ -XFAIL: aix UNSUPPORTED: windows RUN: mkdir -p %t.d diff --git a/compiler-rt/test/profile/instrprof-gcov-one-line-function.test b/compiler-rt/test/profile/instrprof-gcov-one-line-function.test index bb1c165..d67c21a 100644 --- a/compiler-rt/test/profile/instrprof-gcov-one-line-function.test +++ b/compiler-rt/test/profile/instrprof-gcov-one-line-function.test @@ -1,4 +1,3 @@ -XFAIL: aix RUN: mkdir -p %t.d RUN: cd %t.d diff --git a/compiler-rt/test/profile/instrprof-gcov-switch.test b/compiler-rt/test/profile/instrprof-gcov-switch.test index 1616cf0..9c43a93 100644 --- a/compiler-rt/test/profile/instrprof-gcov-switch.test +++ b/compiler-rt/test/profile/instrprof-gcov-switch.test @@ -1,4 +1,3 @@ -XFAIL: aix RUN: mkdir -p %t.d RUN: cd %t.d diff --git a/compiler-rt/test/profile/instrprof-gcov-two-objects.test b/compiler-rt/test/profile/instrprof-gcov-two-objects.test index 2a7805e..4080caa 100644 --- a/compiler-rt/test/profile/instrprof-gcov-two-objects.test +++ b/compiler-rt/test/profile/instrprof-gcov-two-objects.test @@ -1,4 +1,3 @@ -XFAIL: aix RUN: mkdir -p %t.d RUN: cd %t.d diff --git a/compiler-rt/test/profile/instrprof-get-filename.c b/compiler-rt/test/profile/instrprof-get-filename.c index c6cec8c..031b75f 100644 --- a/compiler-rt/test/profile/instrprof-get-filename.c +++ b/compiler-rt/test/profile/instrprof-get-filename.c @@ -1,4 +1,3 @@ -// XFAIL: aix // Test __llvm_profile_get_filename. // RUN: %clang_pgogen -O2 -o %t %s // RUN: %run %t diff --git a/compiler-rt/test/profile/instrprof-icall-promo.test b/compiler-rt/test/profile/instrprof-icall-promo.test index 53a7817..2519b5c 100644 --- a/compiler-rt/test/profile/instrprof-icall-promo.test +++ b/compiler-rt/test/profile/instrprof-icall-promo.test @@ -1,4 +1,3 @@ -// XFAIL: aix # IR based instrumentation RUN: %clangxx_pgogen -O2 -c -o %t.1.o %S/Inputs/instrprof-icall-promo_1.cpp RUN: %clangxx_pgogen -O2 -c -o %t.2.o %S/Inputs/instrprof-icall-promo_2.cpp diff --git a/compiler-rt/test/profile/instrprof-merge-entry-cover.c b/compiler-rt/test/profile/instrprof-merge-entry-cover.c index ea2a773..e8800d9 100644 --- a/compiler-rt/test/profile/instrprof-merge-entry-cover.c +++ b/compiler-rt/test/profile/instrprof-merge-entry-cover.c @@ -1,4 +1,3 @@ -// XFAIL: aix // RUN: %clang_pgogen -O2 -mllvm -pgo-function-entry-coverage -o %t %s // RUN: %run %t %t.profraw 1 1 // RUN: llvm-profdata show --all-functions --counts %t.profraw | FileCheck %s diff --git a/compiler-rt/test/profile/instrprof-path.c b/compiler-rt/test/profile/instrprof-path.c index f54a898..e4dc896 100644 --- a/compiler-rt/test/profile/instrprof-path.c +++ b/compiler-rt/test/profile/instrprof-path.c @@ -1,4 +1,3 @@ -// XFAIL: aix // RUN: %clang_pgogen -O2 -o %t.0 %s // RUN: %clang_pgogen=%/t.d1 -O2 -o %t.1 %s // RUN: %clang_pgogen=%/t.d1/%:t.d2 -O2 -o %t.2 %s diff --git a/compiler-rt/test/profile/instrprof-set-dir-mode.c b/compiler-rt/test/profile/instrprof-set-dir-mode.c index bc91bce..07c7147 100644 --- a/compiler-rt/test/profile/instrprof-set-dir-mode.c +++ b/compiler-rt/test/profile/instrprof-set-dir-mode.c @@ -1,4 +1,3 @@ -// XFAIL: aix // UNSUPPORTED: windows // RUN: %clang_pgogen -o %t.bin %s -DTESTPATH=\"%t.dir\" // RUN: rm -rf %t.dir diff --git a/compiler-rt/test/profile/runtime_infinite.c b/compiler-rt/test/profile/runtime_infinite.c index adae991..b55f5e2 100644 --- a/compiler-rt/test/profile/runtime_infinite.c +++ b/compiler-rt/test/profile/runtime_infinite.c @@ -1,4 +1,3 @@ -// XFAIL: aix // The waiting loop never exits via the normal // path before the profile is dumped and the // program is terminated. This tests checks -- 2.7.4