This is an archive of the discontinued LLVM Phabricator instance.

[InstrProf] Port test suite to Windows
ClosedPublic

Authored by rnk on Feb 6 2019, 3:06 PM.

Details

Summary

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

Diff Detail

Event Timeline

rnk created this revision.Feb 6 2019, 3:06 PM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 6 2019, 3:06 PM
Herald added subscribers: Restricted Project, fedor.sergeev. · View Herald Transcript
davidxl accepted this revision.Feb 6 2019, 3:21 PM

lgtm

This revision is now accepted and ready to land.Feb 6 2019, 3:21 PM
This revision was automatically updated to reflect the committed changes.
Herald added a project: Restricted Project. · View Herald TranscriptFeb 7 2019, 9:51 AM
test/profile/instrprof-shared.test