From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-lj1-x22a.google.com (mail-lj1-x22a.google.com [IPv6:2a00:1450:4864:20::22a]) by sourceware.org (Postfix) with ESMTPS id 384FA3858C66 for ; Wed, 26 Apr 2023 09:44:29 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 384FA3858C66 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-lj1-x22a.google.com with SMTP id 38308e7fff4ca-2a8b3ecf59fso67869141fa.0 for ; Wed, 26 Apr 2023 02:44:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1682502267; x=1685094267; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=8dGiVR/JYu8d4F+qElH4Yzmm11yNeRKfeHtqNyyKQ20=; b=SjoSjnzUZiPLyHXpmFbxqe+XZ5lHzoz+O8c53LL4XO89VzDYh2e0XmwIF6U6b4YAXU fn2E9j0vNoANZVL8Br3yCm+qsP0cZ0+SYVDI6Gy4qHB0AVrhgSR/IdPUg+3K2UAouV+7 IEHPGP8QVFGJOSOuxQ3nwC9KqBS7UcBFR2dmIB9OfzMrOlMhTuXOUapkbYkUvVd+XTtS 7OxgidKj5M96R0b408v9qq/UbQCoarQEulFwJjd098BeTZy8tPgQCamrzhflpVyfYFvo +jTidu8MxdDqcDTe77m3ib4I1xf8i2g8SGkCnKXdT4wRqlgMMf2e8v0XiJbGEjR1dSJV uRdg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1682502267; x=1685094267; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=8dGiVR/JYu8d4F+qElH4Yzmm11yNeRKfeHtqNyyKQ20=; b=S8WghHBV+H8S9ofjHMc6YDO/z6XZG0GTsQlosGk2/3F2ofwXa2hU+irC6BMHQR7MEr RhoAgRWfTCFi5ahl1JAVZzeOwA4XrmIX7RBokqGakmDhOIh7dWBI2UYoqSAsFFuw9SuD oOYv6hRAwa9a9vTI3Qo/cw/Ebt5CTRdZu8CXz0CcZlxHISjV38C3lvcDDI9JtTahlWgg heESmhy7d4jv4YYkyDSryfeGCV4PyPBXg/71cZ/HYkSsZfsQkcD+6rB3keQAiP8U3OF1 9nfWaItAcgtFssG94Svr+Efbw+CM7vRe+Pn8bW4MTAkutJ8AVQlRUKO5npExvu8dqO7a eb9w== X-Gm-Message-State: AAQBX9cCO31BibEKrehunlMI0TMWNVJ0RAkBz5yeEFetQHxIHRrJGi3J 3hlB01ERR4wZgPDeUrY8BvZODUNbsym1WYuZqkw= X-Google-Smtp-Source: AKy350YHmJlV/tFTMaXTonETOygZ3fHIDn4W0gBaUvtQJQcKPee70TW46o8WyOvZSfWIceM8JoI8IPkC9U2zJ++dVag= X-Received: by 2002:a2e:9117:0:b0:298:a1a3:a2e with SMTP id m23-20020a2e9117000000b00298a1a30a2emr4510210ljg.5.1682502267491; Wed, 26 Apr 2023 02:44:27 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Richard Biener Date: Wed, 26 Apr 2023 11:42:59 +0200 Message-ID: Subject: Re: [PATCH] avr: Set param_min_pagesize to 0 [PR105523] To: SenthilKumar.Selvaraj@microchip.com Cc: gcc-patches@gcc.gnu.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-7.3 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,GIT_PATCH_0,KAM_SHORT,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE 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: On Wed, Apr 26, 2023 at 11:01=E2=80=AFAM SenthilKumar.Selvaraj--- via Gcc-patches wrote: > > Hi, > > This patch fixes PR 105523 by setting param_min_pagesize to 0 for the > avr target. For this target, zero and offsets from zero are perfectly > valid addresses, and the default value of param_min_pagesize ends up > triggering warnings on valid memory accesses. I think the proper configuration is to have DEFAULT_ADDR_SPACE_ZERO_ADDRESS_VALID defined to something returning true instead. Richard. > Ok for trunk and backporting to 13 and 12 branches? > > Regards > Senthil > > PR target/105523 > > gcc/ChangeLog: > > * config/avr/avr.cc (avr_option_override): Set > param_min_pagesize to 0. > > gcc/testsuite/ChangeLog: > > * gcc.target/avr/pr105523.c: New test. > > diff --git a/gcc/config/avr/avr.cc b/gcc/config/avr/avr.cc > index c193430cf07..3b862f4e4ac 100644 > --- a/gcc/config/avr/avr.cc > +++ b/gcc/config/avr/avr.cc > @@ -56,6 +56,7 @@ > #include "tree-pass.h" > #include "print-rtl.h" > #include "rtl-iter.h" > +#include "opts.h" > > /* This file should be included last. */ > #include "target-def.h" > @@ -769,6 +770,9 @@ avr_option_override (void) > avr_gasisr_prologues =3D 0; > #endif > > + SET_OPTION_IF_UNSET (&global_options, &global_options_set, > + param_min_pagesize, 0); > + > if (!avr_set_core_architecture()) > return; > > diff --git a/gcc/testsuite/gcc.target/avr/pr105523.c b/gcc/testsuite/gcc.= target/avr/pr105523.c > new file mode 100644 > index 00000000000..fbbf7bf4422 > --- /dev/null > +++ b/gcc/testsuite/gcc.target/avr/pr105523.c > @@ -0,0 +1,14 @@ > +/* { dg-do compile } */ > +/* { dg-options "-Os -Wall" } */ > + > +/* Verify no "array subscript 0 is outside array bounds of" is generated > + for accessing memory addresses in the 0-4096 range. */ > + > +typedef __UINT8_TYPE__ uint8_t; > + > +#define SREG (*(volatile uint8_t*) (0x3F + __AVR_SFR_OFFSET__ )) > + > +void bar (void) > +{ > + SREG =3D 0; > +} >