[llvm-commits] [compiler-rt] r172041 - in /compiler-rt/trunk/lib/ubsan: ubsan_handlers.h ubsan_handlers_cxx.h

Will Dietz wdietz2 at illinois.edu
Wed Jan 9 19:37:30 PST 2013


Author: wdietz2
Date: Wed Jan  9 21:37:30 2013
New Revision: 172041

URL: http://llvm.org/viewvc/llvm-project?rev=172041&view=rev
Log:
[ubsan] Give entry methods default (not hidden) visibility.

Fixes using ubsan on shared libraries in linux, for example.

Modified:
    compiler-rt/trunk/lib/ubsan/ubsan_handlers.h
    compiler-rt/trunk/lib/ubsan/ubsan_handlers_cxx.h

Modified: compiler-rt/trunk/lib/ubsan/ubsan_handlers.h
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/ubsan/ubsan_handlers.h?rev=172041&r1=172040&r2=172041&view=diff
==============================================================================
--- compiler-rt/trunk/lib/ubsan/ubsan_handlers.h (original)
+++ compiler-rt/trunk/lib/ubsan/ubsan_handlers.h Wed Jan  9 21:37:30 2013
@@ -25,7 +25,9 @@
 };
 
 #define RECOVERABLE(checkname, ...) \
+  SANITIZER_INTERFACE_ATTRIBUTE \
   extern "C" void __ubsan_handle_ ## checkname( __VA_ARGS__ ); \
+  SANITIZER_INTERFACE_ATTRIBUTE \
   extern "C" void __ubsan_handle_ ## checkname ## _abort( __VA_ARGS__ );
 
 /// \brief Handle a runtime type check failure, caused by either a misaligned
@@ -70,8 +72,10 @@
 };
 
 /// \brief Handle a __builtin_unreachable which is reached.
+SANITIZER_INTERFACE_ATTRIBUTE
 extern "C" void __ubsan_handle_builtin_unreachable(UnreachableData *Data);
 /// \brief Handle reaching the end of a value-returning function.
+SANITIZER_INTERFACE_ATTRIBUTE
 extern "C" void __ubsan_handle_missing_return(UnreachableData *Data);
 
 struct VLABoundData {

Modified: compiler-rt/trunk/lib/ubsan/ubsan_handlers_cxx.h
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/ubsan/ubsan_handlers_cxx.h?rev=172041&r1=172040&r2=172041&view=diff
==============================================================================
--- compiler-rt/trunk/lib/ubsan/ubsan_handlers_cxx.h (original)
+++ compiler-rt/trunk/lib/ubsan/ubsan_handlers_cxx.h Wed Jan  9 21:37:30 2013
@@ -28,8 +28,10 @@
 /// \brief Handle a runtime type check failure, caused by an incorrect vptr.
 /// When this handler is called, all we know is that the type was not in the
 /// cache; this does not necessarily imply the existence of a bug.
+SANITIZER_INTERFACE_ATTRIBUTE
 extern "C" void __ubsan_handle_dynamic_type_cache_miss(
   DynamicTypeCacheMissData *Data, ValueHandle Pointer, ValueHandle Hash);
+SANITIZER_INTERFACE_ATTRIBUTE
 extern "C" void __ubsan_handle_dynamic_type_cache_miss_abort(
   DynamicTypeCacheMissData *Data, ValueHandle Pointer, ValueHandle Hash);
 





More information about the llvm-commits mailing list