[PATCH] D115204: Port __sanitizer::StopTheWorld to Windows

Martin Storsjö via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 17 15:02:45 PST 2021


mstorsjo added a comment.

In D115204#3200742 <https://reviews.llvm.org/D115204#3200742>, @clemenswasser wrote:

> @mstorsjo I hope this fixes all of your Problems.

Yes, now building does succeed for both i386 and x86_64 mingw. Thanks!

> For me all sanitizer tests pass on X64 and I386.
> Could someone test if the tests also pass on ARM and ARM64?

The sanitizers aren't buildable for Windows on ARM in general (iirc there's a bunch of code in the common code that only is supported for x86, for things like intercepting/hotpatching stuff), so there's no need for this to work there I think, but the stack pointer register name seems correct anyway.

Building does produce this new warning though:

  ../lib/sanitizer_common/sanitizer_stoptheworld_win.cpp:56:52: warning: stack frame size (1304) exceeds limit (570) in '__sanitizer::(anonymous namespace)::SuspendedThreadsListWindows::GetRegistersAndSP(unsigned long long, __sanitizer::InternalMmapVector<unsigned long long>*, unsigned long long*) const' [-Wframe-larger-than]
  PtraceRegistersStatus SuspendedThreadsListWindows::GetRegistersAndSP(
                                                     ^
  1 warning generated.

See D91853 <https://reviews.llvm.org/D91853> and D97726 <https://reviews.llvm.org/D97726> for how such warnings were silenced elsewhere.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D115204/new/

https://reviews.llvm.org/D115204



More information about the llvm-commits mailing list