Module Name: src
Committed By: rin
Date: Sun Mar 24 00:23:59 UTC 2019
Modified Files:
src/external/gpl3/gcc.old/dist/libsanitizer/asan: asan_thread.cc
src/external/gpl3/gcc/dist/libsanitizer/asan: asan_thread.cc
Log Message:
Fix usage of STACK_ALIGNBYTES in our local change.
Tested on amd64 and i386:
- binaries generated by "gcc -fsanitize=address" work fine
- /usr/tests/usr.bin/{cc,c++}/t_asan_* do not fail
To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 \
src/external/gpl3/gcc.old/dist/libsanitizer/asan/asan_thread.cc
cvs rdiff -u -r1.3 -r1.4 \
src/external/gpl3/gcc/dist/libsanitizer/asan/asan_thread.cc
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/external/gpl3/gcc.old/dist/libsanitizer/asan/asan_thread.cc
diff -u src/external/gpl3/gcc.old/dist/libsanitizer/asan/asan_thread.cc:1.5 src/external/gpl3/gcc.old/dist/libsanitizer/asan/asan_thread.cc:1.6
--- src/external/gpl3/gcc.old/dist/libsanitizer/asan/asan_thread.cc:1.5 Thu Jan 17 20:36:51 2019
+++ src/external/gpl3/gcc.old/dist/libsanitizer/asan/asan_thread.cc Sun Mar 24 00:23:59 2019
@@ -226,9 +226,9 @@ bool AsanThread::GetStackFrameAccessByAd
return true;
}
#ifndef STACK_ALIGNBYTES
-# define STACK_ALIGNBYTES (~(SANITIZER_WORDSIZE/8 - 1))
+# define STACK_ALIGNBYTES (SANITIZER_WORDSIZE/8 - 1)
#endif
- uptr aligned_addr = addr & STACK_ALIGNBYTES; // align addr.
+ uptr aligned_addr = addr & ~STACK_ALIGNBYTES; // align addr.
u8 *shadow_ptr = (u8*)MemToShadow(aligned_addr);
u8 *shadow_bottom = (u8*)MemToShadow(bottom);
Index: src/external/gpl3/gcc/dist/libsanitizer/asan/asan_thread.cc
diff -u src/external/gpl3/gcc/dist/libsanitizer/asan/asan_thread.cc:1.3 src/external/gpl3/gcc/dist/libsanitizer/asan/asan_thread.cc:1.4
--- src/external/gpl3/gcc/dist/libsanitizer/asan/asan_thread.cc:1.3 Sat Jan 19 12:10:11 2019
+++ src/external/gpl3/gcc/dist/libsanitizer/asan/asan_thread.cc Sun Mar 24 00:23:59 2019
@@ -301,9 +301,9 @@ bool AsanThread::GetStackFrameAccessByAd
return true;
}
#ifndef STACK_ALIGNBYTES
-# define STACK_ALIGNBYTES (~(SANITIZER_WORDSIZE/8 - 1))
+# define STACK_ALIGNBYTES (SANITIZER_WORDSIZE/8 - 1)
#endif
- uptr aligned_addr = addr & STACK_ALIGNBYTES; // align addr.
+ uptr aligned_addr = addr & ~STACK_ALIGNBYTES; // align addr.
u8 *shadow_ptr = (u8*)MemToShadow(aligned_addr);
u8 *shadow_bottom = (u8*)MemToShadow(bottom);