From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm1-x331.google.com (mail-wm1-x331.google.com [IPv6:2a00:1450:4864:20::331]) by sourceware.org (Postfix) with ESMTPS id 901EA3858D20 for ; Fri, 1 Sep 2023 13:52:18 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 901EA3858D20 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=adacore.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=adacore.com Received: by mail-wm1-x331.google.com with SMTP id 5b1f17b1804b1-401bbfc05fcso20418885e9.3 for ; Fri, 01 Sep 2023 06:52:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=adacore.com; s=google; t=1693576337; x=1694181137; darn=gcc.gnu.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=SY9SmjTW6puIy2dFSJzaAT9E31fFV6ciZml1mphdgpI=; b=eU2gB6axGKc7ijvRc8nEvy2iGZRVgJLOYaK/Cm5ZsL0zkZkj/pGt980nZb4mODSB8A I5VXlB/8mfcM78KD+FDLol6lafn3AHHkeHKHXgJ9R0l3c4WQ+C9qXJbxQYyYIbFSVMMp QZAUXj5L26u1wSHi41/BVhrO+j5TjwiAcRs9X3CjL1p1x0+WNP510fU1o5A9+Ccjvbxw NgsVHDE6BG69VtSmVoaTDLGQOZ0JDOf04qWZ2NXuBJHFCElkwPBstCqbnaGi9E3v4+cF vhEPV5sdyGakL3akydBBXydCXKLF/aVEcoHNyG+RGXV+UjwkBEbOIcOKuuDIcOCMQgcj 04YA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1693576337; x=1694181137; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=SY9SmjTW6puIy2dFSJzaAT9E31fFV6ciZml1mphdgpI=; b=LtpmM4abVPk/KKoBx+OqU/yc6HbTucWQPP7h2NPREtgiuKD81TFGSIKRcofl4haw5Y QxV6IJ2z+NHa1M1+EOi2QYEKyF1pKnrOTHotRULWjqG1fMSxBAK6EeSDolgP4Tk8rj1a PXBabulrrh9zhhX3Ljd2FEbpO3f8/HaTOeErJrBK7wmJe3JgcyNW/fV1Rg1z1AvjGjxY 7BHsm7lEtesvsAvznoQ+Oocd8PM+0UnMk0jIhPnpnKyUJ0t34JY3ldIJtp9RKv1DuTqc hBlBvdI5wIvPOmeFdhbkQGzzUZd/TUH1/Mon2Ql/BOfHd0UIPhOnllmcYpH00eWan1k5 o5+Q== X-Gm-Message-State: AOJu0YzdfabqDar9Yq0Cx2bI6pRLXfzwyrfOpv1EyJWdCikX2iGy2Qyw fZ5HNFc64Jj3w4Y+OECsxhx8/Q== X-Google-Smtp-Source: AGHT+IGV9Qlre95zZJQ4pToPMR6mH9fdOVThNI2cS4ylHRRBg4vHQNftJlxyqu+/SQ11xW+SRPLXvQ== X-Received: by 2002:adf:e486:0:b0:31a:d9bc:47aa with SMTP id i6-20020adfe486000000b0031ad9bc47aamr2024821wrm.67.1693576337175; Fri, 01 Sep 2023 06:52:17 -0700 (PDT) Received: from localhost ([45.147.211.82]) by smtp.gmail.com with ESMTPSA id i14-20020adfdece000000b003142e438e8csm5287558wrn.26.2023.09.01.06.52.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 01 Sep 2023 06:52:16 -0700 (PDT) Date: Fri, 1 Sep 2023 13:52:16 +0000 From: Arnaud Charlet To: Yang Yujie Cc: gcc-patches@gcc.gnu.org, charlet@adacore.com, ebotcazou@libertysurf.fr, poulhies@adacore.com, derodat@adacore.com, xuchenghua@loongson.cn, chenglulu@loongson.cn Subject: Re: [PING][PATCH] LoongArch: initial ada support on linux Message-ID: <20230901135216.GA2377083@adacore.com> References: <20230825044712.348608-1-yangyujie@loongson.cn> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20230825044712.348608-1-yangyujie@loongson.cn> X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: > gcc/ChangeLog: > > * ada/Makefile.rtl: Add LoongArch support. > * ada/libgnarl/s-linux__loongarch.ads: New. > * ada/libgnat/system-linux-loongarch.ads: New. > * config/loongarch/loongarch.h: mark normalized options > passed from driver to gnat1 as explicit for multilib. > --- > --- a/gcc/ada/Makefile.rtl > +++ b/gcc/ada/Makefile.rtl > @@ -2111,6 +2111,55 @@ ifeq ($(strip $(filter-out cygwin% mingw32% pe,$(target_os))),) > LIBRARY_VERSION := $(LIB_VERSION) > endif > > +# LoongArch Linux > +ifeq ($(strip $(filter-out loongarch% linux%,$(target_cpu) $(target_os))),) > + LIBGNAT_TARGET_PAIRS = \ > + a-exetim.adb + a-exetim.ads + a-intnam.ads + a-nallfl.ads + a-synbar.adb + a-synbar.ads + s-inmaop.adb + s-intman.adb + s-linux.ads + s-mudido.adb + s-osinte.ads + s-osinte.adb + s-osprim.adb + s-taprop.adb + s-tasinf.ads + s-tasinf.adb + s-tpopsp.adb + s-taspri.ads + g-sercom.adb + $(TRASYM_DWARF_UNIX_PAIRS) \ > + $(GNATRTL_128BIT_PAIRS) \ > + s-tsmona.adb + $(ATOMICS_TARGET_PAIRS) \ > + $(ATOMICS_BUILTINS_TARGET_PAIRS) \ > + system.ads + > + TOOLS_TARGET_PAIRS = indepsw.adb + > + EXTRA_GNATRTL_NONTASKING_OBJS += $(TRASYM_DWARF_UNIX_OBJS) > + EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS) > + EXTRA_GNATRTL_TASKING_OBJS = s-linux.o a-exetim.o > + > + EH_MECHANISM = -gcc > + THREADSLIB = -lpthread > + MISCLIB = -ldl > + GNATLIB_SHARED = gnatlib-shared-dual > + GMEM_LIB = gmemlib > + LIBRARY_VERSION := $(LIB_VERSION) > + # Temporarily disable strict alignment -- for some reason, it causes > + # infinite loops during stack unwinding (libgcc) and indefinite hang > + # in some futex system calls. > + GNATLIBCFLAGS := $(GNATLIBCFLAGS) -mno-strict-align > + GNATLIBCFLAGS_FOR_C := $(GNATLIBCFLAGS_FOR_C) -mno-strict-align Patch looks indeed OK. A small nit above: I'd suggest using += instead of := $(XXX) to make things clearer. Arno