[PATCH] D37882: ubsan: Unbreak ubsan_cxx runtime library on Windows.

Peter Collingbourne via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 14 19:05:40 PDT 2017


pcc created this revision.
Herald added subscribers: mgorny, kubamracek.

This was originally broken by r258744 which introduced a weak reference
from ubsan to ubsan_cxx, which of course does not work directly on
Windows. The fix is to use /alternatename to create a weak external
reference to ubsan_cxx.

Also fix the definition (and the name, so that we drop cached values)
of the cmake flag that controls whether to build ubsan_cxx. Now the
user-controllable flag is always on, and we turn it off internally
depending on whether we support building it.


https://reviews.llvm.org/D37882

Files:
  compiler-rt/CMakeLists.txt
  compiler-rt/lib/ubsan/ubsan_handlers.cc
  compiler-rt/lib/ubsan/ubsan_handlers.h
  compiler-rt/lib/ubsan/ubsan_handlers_cxx.cc
  compiler-rt/test/cfi/target_uninstrumented.cpp
  compiler-rt/test/ubsan/TestCases/TypeCheck/PR33221.cpp
  compiler-rt/test/ubsan/TestCases/TypeCheck/vptr-non-unique-typeinfo.cpp
  compiler-rt/test/ubsan/TestCases/TypeCheck/vptr-virtual-base-construction.cpp
  compiler-rt/test/ubsan/TestCases/TypeCheck/vptr-virtual-base.cpp
  compiler-rt/test/ubsan/TestCases/TypeCheck/vptr.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D37882.115338.patch
Type: text/x-patch
Size: 6739 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170915/c85414a6/attachment.bin>


More information about the llvm-commits mailing list