Skip to content

Commit

Permalink
Charry pick libsanitizer r355488 (PR sanitizer/88684).
Browse files Browse the repository at this point in the history
2019-03-06  Martin Liska  <mliska@suse.cz>

	PR sanitizer/88684
	* sanitizer_common/sanitizer_platform.h (defined): Cherry pick.
	(SANITIZER_NON_UNIQUE_TYPEINFO): Likewise.
	* ubsan/ubsan_type_hash_itanium.cc (isDerivedFromAtOffset):
	Likewise.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@269419 138bc75d-0d04-0410-961f-82ee72b054a4
  • Loading branch information
marxin committed Mar 6, 2019
1 parent 13825fb commit 8946305
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 3 deletions.
8 changes: 8 additions & 0 deletions libsanitizer/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
2019-03-06 Martin Liska <mliska@suse.cz>

PR sanitizer/88684
* sanitizer_common/sanitizer_platform.h (defined): Cherry pick.
(SANITIZER_NON_UNIQUE_TYPEINFO): Likewise.
* ubsan/ubsan_type_hash_itanium.cc (isDerivedFromAtOffset):
Likewise.

2019-02-20 H.J. Lu <hongjiu.lu@intel.com>

PR sanitizer/89409
Expand Down
6 changes: 3 additions & 3 deletions libsanitizer/sanitizer_common/sanitizer_platform.h
Original file line number Diff line number Diff line change
Expand Up @@ -290,10 +290,10 @@
# define MSC_PREREQ(version) 0
#endif

#if defined(__arm64__) && SANITIZER_IOS
# define SANITIZER_NON_UNIQUE_TYPEINFO 1
#else
#if SANITIZER_MAC && !(defined(__arm64__) && SANITIZER_IOS)
# define SANITIZER_NON_UNIQUE_TYPEINFO 0
#else
# define SANITIZER_NON_UNIQUE_TYPEINFO 1
#endif

// On linux, some architectures had an ABI transition from 64-bit long double
Expand Down
1 change: 1 addition & 0 deletions libsanitizer/ubsan/ubsan_type_hash_itanium.cc
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,7 @@ static bool isDerivedFromAtOffset(const abi::__class_type_info *Derived,
sptr Offset) {
if (Derived->__type_name == Base->__type_name ||
(SANITIZER_NON_UNIQUE_TYPEINFO &&
Derived->__type_name[0] != '*' &&
!internal_strcmp(Derived->__type_name, Base->__type_name)))
return Offset == 0;

Expand Down

0 comments on commit 8946305

Please sign in to comment.