Since size of "void *" is 4 bytes for x32, check if __x86_64__ is defined by $CC, instead of
if test x$ac_cv_sizeof_void_p = x8; then to decide wether anitizer_linux_x86_64.lo should be used. I am testing this on i686 and x86-64. OK for trunk and GCC 7 branch if there are no regression? Please upstream it for me if appropriate. Thanks. H.J. --- PR sanitizer/82379 * configure.tgt (ANITIZER_COMMON_TARGET_DEPENDENT_OBJECTS): Set to anitizer_linux_x86_64.lo if __x86_64__ is defined by $CC. --- libsanitizer/configure.tgt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libsanitizer/configure.tgt b/libsanitizer/configure.tgt index 82e8a5513c5..573e3b482e9 100644 --- a/libsanitizer/configure.tgt +++ b/libsanitizer/configure.tgt @@ -27,6 +27,8 @@ case "${target}" in TSAN_SUPPORTED=yes LSAN_SUPPORTED=yes TSAN_TARGET_DEPENDENT_OBJECTS=tsan_rtl_amd64.lo + fi + if echo "int x = __x86_64__;" | $CC -c -x c -o /dev/null - > /dev/null 2>&1; then SANITIZER_COMMON_TARGET_DEPENDENT_OBJECTS=sanitizer_linux_x86_64.lo fi ;; -- 2.13.6