[PATCH] D57853: [InstrProf] Port test suite to Windows

Reid Kleckner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 6 15:06:44 PST 2019


rnk created this revision.
rnk added reviewers: davidxl, wmi, void.
Herald added subscribers: Sanitizers, fedor.sergeev.
Herald added a project: Sanitizers.

Before this change, check-profile would run, but all tests would be
marked unsupported on Windows. This is the new status of 'check-profile'
after this change:

Testing Time: 6.66s

  Expected Passes    : 29
  Expected Failures  : 5
  Unsupported Tests  : 39

I moved many tests that exercise posix-y features like dlopen and DSOs
into the Posix subdirectory, and ran the tests on Linux to validate my
changes.

These are the remaining tests that I handled on a case by case basis:

- instrprof-path.c Passes, Fixed some path portability issues
- instrprof-gcov-exceptions.test Passes, the FileCheck actually succeeds on Windows, so I RUNX'd it
- instrprof-icall-promo.test XFAILed, probably due to C++ ABI differences in vtables
- instrprof-merge-match.test
- instrprof-merge.c
- instrprof-merging.cpp XFAILed, These seem like real bugs that need fixing
- instrprof-version-mismatch.c XFAILed, Overriding the weak version symbol doesn't work
- instrprof-without-libc.c UNSUPPORTED, test needs an executable symbol table, Windows has none


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D57853

Files:
  compiler-rt/test/profile/Inputs/instrprof-gcov-__gcov_flush-multiple.c.gcov
  compiler-rt/test/profile/Inputs/instrprof-gcov-__gcov_flush-terminate.c.gcov
  compiler-rt/test/profile/Inputs/instrprof-gcov-exceptions.cpp.gcov
  compiler-rt/test/profile/Inputs/instrprof-gcov-execlp.c.gcov
  compiler-rt/test/profile/Inputs/instrprof-gcov-execvp.c.gcov
  compiler-rt/test/profile/Inputs/instrprof-gcov-fork.c.gcov
  compiler-rt/test/profile/Inputs/instrprof-gcov-multiple-bbs-single-line.c.gcov
  compiler-rt/test/profile/Inputs/instrprof-gcov-one-line-function.c.gcov
  compiler-rt/test/profile/Inputs/instrprof-gcov-switch1.c.gcov
  compiler-rt/test/profile/Inputs/instrprof-gcov-switch2.c.gcov
  compiler-rt/test/profile/Inputs/instrprof-shared-lib.c.gcov
  compiler-rt/test/profile/Inputs/instrprof-shared-lib_called-twice.c.gcov
  compiler-rt/test/profile/Inputs/instrprof-shared-lib_in-loop.c.gcov
  compiler-rt/test/profile/Inputs/instrprof-shared-main-gcov-flush_no-writeout.c.gcov
  compiler-rt/test/profile/Inputs/instrprof-shared-main-gcov-flush_shared-call-after.c.gcov
  compiler-rt/test/profile/Inputs/instrprof-shared-main-gcov-flush_shared-call-before-after.c.gcov
  compiler-rt/test/profile/Inputs/instrprof-shared-main-gcov-flush_shared-call-before.c.gcov
  compiler-rt/test/profile/Inputs/instrprof-shared-main.c.gcov
  compiler-rt/test/profile/Inputs/instrprof-visibility-helper.cpp
  compiler-rt/test/profile/Posix/Inputs/instrprof-visibility-helper.cpp
  compiler-rt/test/profile/Posix/instrprof-dlopen-dlclose-gcov.test
  compiler-rt/test/profile/Posix/instrprof-dlopen.test
  compiler-rt/test/profile/Posix/instrprof-dynamic-one-shared.test
  compiler-rt/test/profile/Posix/instrprof-dynamic-two-shared.test
  compiler-rt/test/profile/Posix/instrprof-set-filename-shared.test
  compiler-rt/test/profile/Posix/instrprof-shared-gcov-flush.test
  compiler-rt/test/profile/Posix/instrprof-shared.test
  compiler-rt/test/profile/Posix/instrprof-value-prof-shared.test
  compiler-rt/test/profile/Posix/instrprof-visibility-kinds.inc
  compiler-rt/test/profile/Posix/instrprof-visibility.cpp
  compiler-rt/test/profile/Posix/lit.local.cfg
  compiler-rt/test/profile/instrprof-dlopen-dlclose-gcov.test
  compiler-rt/test/profile/instrprof-dlopen.test
  compiler-rt/test/profile/instrprof-dynamic-one-shared.test
  compiler-rt/test/profile/instrprof-dynamic-two-shared.test
  compiler-rt/test/profile/instrprof-gcov-exceptions.test
  compiler-rt/test/profile/instrprof-icall-promo.test
  compiler-rt/test/profile/instrprof-merge-match.test
  compiler-rt/test/profile/instrprof-merge.c
  compiler-rt/test/profile/instrprof-merging.cpp
  compiler-rt/test/profile/instrprof-path.c
  compiler-rt/test/profile/instrprof-set-filename-shared.test
  compiler-rt/test/profile/instrprof-shared-gcov-flush.test
  compiler-rt/test/profile/instrprof-shared.test
  compiler-rt/test/profile/instrprof-value-prof-shared.test
  compiler-rt/test/profile/instrprof-version-mismatch.c
  compiler-rt/test/profile/instrprof-visibility-kinds.inc
  compiler-rt/test/profile/instrprof-visibility.cpp
  compiler-rt/test/profile/instrprof-without-libc.c
  compiler-rt/test/profile/lit.cfg

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D57853.185652.patch
Type: text/x-patch
Size: 57813 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190206/b6a355b9/attachment.bin>


More information about the llvm-commits mailing list