From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 7863) id D021B3858D1E; Tue, 31 Jan 2023 02:01:12 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org D021B3858D1E DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1675130472; bh=dBfu50csGeLJxLYDfGo6BoczoiBlZyYCBtr2wJsv3gc=; h=From:To:Subject:Date:From; b=aHrxoJolkY2wK6BnwT/rlAd+z/0PF+UPBQ/HswTgBzDOZbkSgrot8unKviLkcIwoy 9jiNCN4HV7rv6Vhk6U4JQrkmoLDJ6OedWO4vHbC2QYQPynmtIBbylQcpHBJ+3e9b6o vEPUtZS1IlszPo2tj7pJ3NGmIfQ/1kiMioUTyuo0= MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: YunQiang Su To: gcc-cvs@gcc.gnu.org Subject: [gcc r13-5524] libsanitizer/mips: always build with largefile support X-Act-Checkin: gcc X-Git-Author: YunQiang Su X-Git-Refname: refs/heads/master X-Git-Oldrev: 897a0502056e6cc6613f26e0b22d1c1e06b1490f X-Git-Newrev: e08835fd3a4a6559b79c26db9b18df0e838d943e Message-Id: <20230131020112.D021B3858D1E@sourceware.org> Date: Tue, 31 Jan 2023 02:01:12 +0000 (GMT) List-Id: https://gcc.gnu.org/g:e08835fd3a4a6559b79c26db9b18df0e838d943e commit r13-5524-ge08835fd3a4a6559b79c26db9b18df0e838d943e Author: YunQiang Su Date: Fri Jan 6 18:28:22 2023 +0800 libsanitizer/mips: always build with largefile support -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 is always used for mips when build libsanitizer in LLVM. Thus FIRST_32_SECOND_64((_MIPS_SIM == _ABIN32) ? 176 : 160, 216); instead of FIRST_32_SECOND_64((_MIPS_SIM == _ABIN32) ? 160 : 144, 216); in sanitizer_platform_limits_posix.h. To keep sync with LLVM and to make the code simple, we use the largefile options always. libsanitizer/ * configure.ac: set -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 always for mips*. * configure: Regenerate. Diff: --- libsanitizer/configure | 13 ++++++++++--- libsanitizer/configure.ac | 12 ++++++++++-- 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/libsanitizer/configure b/libsanitizer/configure index d3de3dbba51..d4ee0fac3e7 100755 --- a/libsanitizer/configure +++ b/libsanitizer/configure @@ -17045,9 +17045,16 @@ else $as_echo "no" >&6; } fi -EXTRA_CFLAGS="$EXTRA_CFLAGS $CET_FLAGS" -EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS $CET_FLAGS" -EXTRA_ASFLAGS=$CET_FLAGS +# Always set -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 to sync with LLVM, +# and keep struct *stat* have the same size. +case "${host}" in + mips*-*) FILE64_FLAGS="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" ;; + *) FILE64_FLAGS="" ;; +esac + +EXTRA_CFLAGS="$EXTRA_CFLAGS $CET_FLAGS $FILE64_FLAGS" +EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS $CET_FLAGS $FILE64_FLAGS" +EXTRA_ASFLAGS="$CET_FLAGS $FILE64_FLAGS" diff --git a/libsanitizer/configure.ac b/libsanitizer/configure.ac index ad49f29db7e..04cd8910ed6 100644 --- a/libsanitizer/configure.ac +++ b/libsanitizer/configure.ac @@ -416,8 +416,16 @@ GCC_BASE_VER # Add CET specific flags if Intel CET is enabled. GCC_CET_FLAGS(CET_FLAGS) -EXTRA_CFLAGS="$EXTRA_CFLAGS $CET_FLAGS" -EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS $CET_FLAGS" + +# Always set -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 to sync with LLVM, +# and keep struct *stat* have the same size. +case "${host}" in + mips*-*) FILE64_FLAGS="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" ;; + *) FILE64_FLAGS="" ;; +esac + +EXTRA_CFLAGS="$EXTRA_CFLAGS $CET_FLAGS $FILE64_FLAGS" +EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS $CET_FLAGS $FILE64_FLAGS" EXTRA_ASFLAGS=$CET_FLAGS AC_SUBST(EXTRA_ASFLAGS) AC_SUBST(EXTRA_CFLAGS)