From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 7877) id 6AE183856251; Mon, 31 Oct 2022 09:35:56 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 6AE183856251 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1667208956; bh=9nVK7QWod4SaNPQ2F9sP+qNiPCFhFAs1vpolQfRbmog=; h=From:To:Subject:Date:From; b=epuSSF6VszvLkL8psy7p00eH699bvgrzOtV/SeWpYuQRsyw6658qjcQY+juHU8FOc O9YDs3cm2ZjVeiSh40U5SntERaGpFkCr/Zlh/WOBhbtafEab0JhOMGDnEzdzeFUjt6 UPijNOYjNTKE+HMiFPs5zSDD9r3eIJzGxZjnRhEk= MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: LuluCheng To: gcc-cvs@gcc.gnu.org Subject: [gcc r13-3571] Libvtv: Add loongarch support. X-Act-Checkin: gcc X-Git-Author: Lulu Cheng X-Git-Refname: refs/heads/master X-Git-Oldrev: 259a11555c90783e53c046c310080407ee54a31e X-Git-Newrev: 27b9e1158b3e819ba77367b6b0d6161186b0ca7f Message-Id: <20221031093556.6AE183856251@sourceware.org> Date: Mon, 31 Oct 2022 09:35:56 +0000 (GMT) List-Id: https://gcc.gnu.org/g:27b9e1158b3e819ba77367b6b0d6161186b0ca7f commit r13-3571-g27b9e1158b3e819ba77367b6b0d6161186b0ca7f Author: Lulu Cheng Date: Tue Sep 27 15:28:43 2022 +0800 Libvtv: Add loongarch support. The loongarch64 specification permits page sizes of 4KiB, 16KiB and 64KiB, but only 16KiB pages are supported for now. Co-Authored-By: qijingwen include/ChangeLog: * vtv-change-permission.h (defined): Determines whether the macro __loongarch_lp64 is defined (VTV_PAGE_SIZE): Set VTV_PAGE_SIZE to 16KiB for loongarch64. libvtv/ChangeLog: * configure.tgt: Add loongarch support. Diff: --- include/vtv-change-permission.h | 4 ++++ libvtv/configure.tgt | 3 +++ 2 files changed, 7 insertions(+) diff --git a/include/vtv-change-permission.h b/include/vtv-change-permission.h index 70bdad92bca..e7b9294a081 100644 --- a/include/vtv-change-permission.h +++ b/include/vtv-change-permission.h @@ -48,6 +48,10 @@ extern void __VLTChangePermission (int); #else #if defined(__sun__) && defined(__svr4__) && defined(__sparc__) #define VTV_PAGE_SIZE 8192 +#elif defined(__loongarch_lp64) +/* The page size is configurable by the kernel to be 4, 16 or 64 KiB. + For now, only the default page size of 16KiB is supported. */ +#define VTV_PAGE_SIZE 16384 #else #define VTV_PAGE_SIZE 4096 #endif diff --git a/libvtv/configure.tgt b/libvtv/configure.tgt index aa2a3f675b8..6cdd1e97ab1 100644 --- a/libvtv/configure.tgt +++ b/libvtv/configure.tgt @@ -50,6 +50,9 @@ case "${target}" in ;; x86_64-*-darwin[1]* | i?86-*-darwin[1]*) ;; + loongarch*-*-linux*) + VTV_SUPPORTED=yes + ;; *) ;; esac