From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-eopbgr60085.outbound.protection.outlook.com [40.107.6.85]) by sourceware.org (Postfix) with ESMTPS id 5BD34385DC0E for ; Tue, 14 Apr 2020 16:55:25 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 5BD34385DC0E Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=Kyrylo.Tkachov@arm.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=04ssCd8nFCVgks3/9XwXRnkur0OCr+HIxEebP5OTdOQ=; b=m/P0AD0n2c1cinSbEFYMz/x/cSihTj7TTOS3fNnnnLNMl2kNSqe9IXwLjpYLpwCBIP2A6h0ndmuxT5mqcR9TWtcKmf2P8nz2PbUhLiru3Rw0N5RxZJ4SkL0C12lkEc81z8pdWxFJqHcILbCEp9STKllLQRFw0Y11NkwvN/xvfsE= Received: from DB8PR09CA0030.eurprd09.prod.outlook.com (2603:10a6:10:a0::43) by VI1PR08MB2912.eurprd08.prod.outlook.com (2603:10a6:802:1a::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2900.28; Tue, 14 Apr 2020 16:55:23 +0000 Received: from DB5EUR03FT061.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:a0:cafe::a3) by DB8PR09CA0030.outlook.office365.com (2603:10a6:10:a0::43) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2900.15 via Frontend Transport; Tue, 14 Apr 2020 16:55:23 +0000 Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; gcc.gnu.org; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;gcc.gnu.org; dmarc=bestguesspass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DB5EUR03FT061.mail.protection.outlook.com (10.152.21.234) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2900.18 via Frontend Transport; Tue, 14 Apr 2020 16:55:23 +0000 Received: ("Tessian outbound 1425309d4c0b:v50"); Tue, 14 Apr 2020 16:55:23 +0000 X-CR-MTA-TID: 64aa7808 Received: from a3c409645011.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id C68E3985-6647-470A-B10D-DEF6A619B81D.1; Tue, 14 Apr 2020 16:55:18 +0000 Received: from EUR01-DB5-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a3c409645011.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 14 Apr 2020 16:55:18 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TrdMYyuQz6Gismj4QwdPipJ34HSBjOoPkkMHOIGb++wdnHYhrU8tb2AUzY45ylP9w1JL76YwJug3qVpKA5ldlmHnugD8eIoiqMRDj/R+lNrAG/0ak7/dF5C86E0j7SMRDzBqGwyFrk2I8nF+rq82udTkOA9ziB6ad/TVRFj2oJGcooPSd+WWLC3ISf4tGHndcp8czM2NkJSiVo4hU8j12GlJlYLngfhia/UiPWV6OhlrJwbegL8kyCVQfIjxlVu/UEzz7MiJcBxbEePBa0GvqIyBHcZwKxUHDlYYpW+bxaTwm2g6eidnb0Kb50knY9KuoGl8ALe97EFMxIlLxTJ84A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=04ssCd8nFCVgks3/9XwXRnkur0OCr+HIxEebP5OTdOQ=; b=iOIz3qXO6e1m51W9bwGrYEylbF99NDg96Ih+WjSAr7XX+5AsiZ3Qj4duS402PN3YuN2IaQB/M7j/u/nqgTVeH1O5n5GzMQ6+pMUCvywDPERaZRFUIphYV2YJE2mfvAwipI58ofJNRSOjwS1toueJ9cnQbtzPyg3m9pcn6hqxEAarYA/GldDYiQ/Bbc0duo+B9+7BRKYY1Z5Ga98MBzI3B91HTMgy/DNbzjsyCLE+apT4RlqB2Tx9h2y0ICE+UVAJwsjDSMOiz4EdJKhuIh4ta4bBj7zM0+2Qys76nJQTnnJQulMrGlTobjyU5NciJN9RgJBZrn5qsYh/iQJOVsqeTQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=04ssCd8nFCVgks3/9XwXRnkur0OCr+HIxEebP5OTdOQ=; b=m/P0AD0n2c1cinSbEFYMz/x/cSihTj7TTOS3fNnnnLNMl2kNSqe9IXwLjpYLpwCBIP2A6h0ndmuxT5mqcR9TWtcKmf2P8nz2PbUhLiru3Rw0N5RxZJ4SkL0C12lkEc81z8pdWxFJqHcILbCEp9STKllLQRFw0Y11NkwvN/xvfsE= Received: from DB7PR08MB3002.eurprd08.prod.outlook.com (2603:10a6:5:20::25) by DB7PR08MB3034.eurprd08.prod.outlook.com (2603:10a6:5:24::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2900.26; Tue, 14 Apr 2020 16:55:16 +0000 Received: from DB7PR08MB3002.eurprd08.prod.outlook.com ([fe80::2c3f:e5d1:183f:4731]) by DB7PR08MB3002.eurprd08.prod.outlook.com ([fe80::2c3f:e5d1:183f:4731%7]) with mapi id 15.20.2900.028; Tue, 14 Apr 2020 16:55:16 +0000 From: Kyrylo Tkachov To: Andrea Corallo , "gcc-patches@gcc.gnu.org" CC: nd , Christophe Lyon Subject: RE: [PATCH]aarch64: falkor-tag-collision-avoidance.c fix valid_src_p for use of uninitialized value Thread-Topic: [PATCH]aarch64: falkor-tag-collision-avoidance.c fix valid_src_p for use of uninitialized value Thread-Index: AQHWEkOT0W5hASm9WEmC/GHTXnnex6h41ZrA Date: Tue, 14 Apr 2020 16:55:16 +0000 Message-ID: References: <87wo6pxfcn.fsf@arm.com> In-Reply-To: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 60355d74-8054-4617-a98f-2bb373b4cb58.1 x-checkrecipientchecked: true Authentication-Results-Original: spf=none (sender IP is ) smtp.mailfrom=Kyrylo.Tkachov@arm.com; x-originating-ip: [80.5.218.175] x-ms-publictraffictype: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 5935f588-4302-4a52-bfbe-08d7e0949f8e x-ms-traffictypediagnostic: DB7PR08MB3034:|DB7PR08MB3034:|VI1PR08MB2912: x-ms-exchange-transport-forked: True X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true x-ms-oob-tlc-oobclassifiers: OLM:9508;OLM:9508; x-forefront-prvs: 0373D94D15 X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DB7PR08MB3002.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(10009020)(4636009)(376002)(396003)(39850400004)(136003)(366004)(346002)(52536014)(55016002)(64756008)(9686003)(186003)(7696005)(66476007)(66946007)(71200400001)(33656002)(66556008)(66446008)(8936002)(8676002)(81156014)(54906003)(110136005)(316002)(76116006)(6506007)(26005)(53546011)(478600001)(86362001)(2906002)(5660300002)(4326008); DIR:OUT; SFP:1101; received-spf: None (protection.outlook.com: arm.com does not designate permitted sender hosts) X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: P67WUUNFfSpt63Db7FVH+AhqxINkk0UA0lcOE9CEXlp3EmNdkC3SBDdtsBOOfakM0+3+pleuDxKKrh5/aIjKNOBaAiGmHkn0foKGd6iw2IElDdMwHYrYAQuebFab0T1B8rwNReMWgQgeung+U90HZppFH+ogGuihrJmqdNaXrrsPr8M9TQOBTy1UuL8/R8z4ASFJcvOJ+P6urVwHHtW2eo225cO8p15TJX7ZqopXvYhZ8ca9vIRSLs+m6jdcD9VuXuIvgn7eRMoSQlYHV5LMXIwjXJI5BLO0/OKf1KwYCvjtODalXnMnbj25QomSjfNSCAF0bEm00IqQ3GxI0DXKTod6LZhHnt0qFkynEPlwdBFRo7VyIXKxLLn0E6OXwlMtHINRI56zPt1+BXcryxu5dz3EmbyaddMKcNdnFUWF3TxiIGTTwoQARlJskjqx9ICV x-ms-exchange-antispam-messagedata: baalxErI9IzZ0JcqI8yocahHmwygxLB1WirxiCWpDwpVU/BVkJ3mtws/3ZVnz96oG8vG/I66BwtxyGaIZKkuIUT10I2Jl6bcncniWj+/+OjxJR0iRY0P2cLHkdt8Rfe/J+UCHEq5pLpRLR+HG5/8JA== Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR08MB3034 Original-Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Kyrylo.Tkachov@arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DB5EUR03FT061.eop-EUR03.prod.protection.outlook.com X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFTY:; SFS:(10009020)(4636009)(396003)(346002)(39850400004)(136003)(376002)(46966005)(356005)(336012)(81156014)(82740400003)(47076004)(81166007)(8936002)(70206006)(186003)(8676002)(70586007)(478600001)(86362001)(26826003)(53546011)(6506007)(5660300002)(9686003)(2906002)(26005)(107886003)(52536014)(55016002)(54906003)(110136005)(33656002)(4326008)(7696005)(316002); DIR:OUT; SFP:1101; X-MS-Office365-Filtering-Correlation-Id-Prvs: 056c4074-719f-4c07-bf67-08d7e0949bc0 X-Forefront-PRVS: 0373D94D15 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: YcYK8U0qOvDLLpjDaHiMAGB4Y62hm9OIL/7l7yEnLMuSXHcLyaBtxaat5FFx2vvFm3FrudYJ9XKz8QNJILCAVvQQkiyTruSB07GbC5dK/8OGhtTkKVh015VWgmFZOhdYrXbWQlVwqA1axiscWEZsuvJUEilpqyQpWmkuba9BLFxs585fD6jhVPMGCFCrOjS9so+FQXulPDniVbemYVysSl4GUFr0VHt1NNyzNtfvaIF4w/a/+F/QndUw/mVXB3vn8tfDSHxcWjkTZCAMS9bU3K3uS4swuWgQ7vy4cPoA5a8l8O79NhCHQfUiDlmtHsB657rHneq+SnZdsh/5oX9LtUfwm1MHe66z5+uyvbdQ7TZlWlzaV5uVghIndV9fYoZ9Qp+cI1AfHoRYX9s3RtuyToKfAcJ81/6YJAKQDygWtmbPOa7VF7VL+BN6TBfouskgvEp9I8MYKabB0JtpA1IOHq1VNg6mni2suq9asQfsVds9AmUZUlZaMZReELUoISxCc1s4X4vDmHNixSnOsr4GKQ== X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2020 16:55:23.2868 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 5935f588-4302-4a52-bfbe-08d7e0949f8e X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB2912 X-Spam-Status: No, score=-29.2 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, RCVD_IN_DNSWL_NONE, SPF_HELO_PASS, SPF_PASS, TXREP, UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Apr 2020 16:55:32 -0000 Hi Andrea, > -----Original Message----- > From: Andrea Corallo > Sent: 14 April 2020 11:01 > To: gcc-patches@gcc.gnu.org > Cc: Kyrylo Tkachov ; nd ; > Christophe Lyon > Subject: [PATCH]aarch64: falkor-tag-collision-avoidance.c fix valid_src_p= for > use of uninitialized value >=20 > Hi all, >=20 > Testing the backport of pr94530 fix (af19e4d0e23e) to GCC 9 I realized > this is not entirely correct. >=20 > aarch64_classify_address sets the base field of struct > aarch64_address_info for all aarch64_address_type with the exception > of ADDRESS_SYMBOLIC. In this case we would access an uninitialized > value. The attached patch fixes the issue. >=20 > Bootstraped on aarch64 and regressioned. Okay for trunk? >=20 > I've also tested af19e4d0e23e + the current patch rebased on on top of > the gcc-9 branch. Okay to backport? >=20 > Andrea >=20 > PS I'm wondering if would be good also to always set the addr field in > aarch64_classify_address for safeness. >=20 > gcc/ChangeLog >=20 > 2020-??-?? Andrea Corallo >=20 > * config/aarch64/falkor-tag-collision-avoidance.c > (valid_src_p): Check for aarch64_address_info type before > accessing base field. >From 4af5bb32cd88bb4e65591207839fb0e276b2eb23 Mon Sep 17 00:00:00 2001 From: Andrea Corallo Date: Thu, 9 Apr 2020 15:34:50 +0100 Subject: [PATCH] pr94530 2 --- gcc/config/aarch64/falkor-tag-collision-avoidance.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/config/aarch64/falkor-tag-collision-avoidance.c b/gcc/conf= ig/aarch64/falkor-tag-collision-avoidance.c index f850153fae02..fb56ff66bfab 100644 --- a/gcc/config/aarch64/falkor-tag-collision-avoidance.c +++ b/gcc/config/aarch64/falkor-tag-collision-avoidance.c @@ -538,7 +538,7 @@ valid_src_p (rtx src, rtx_insn *insn, struct loop *loop= , bool *pre_post, if (!aarch64_classify_address (&addr, XEXP (x, 0), mode, true)) return false; =20 - if (!REG_P (addr.base)) + if (addr.type =3D=3D ADDRESS_SYMBOLIC || !REG_P (addr.base)) return false; =20 Hmm, given that the code below only handles the ADDRESS_REG_* forms, how a= bout we get defensive here and check that addr.type is not one of ADDRESS_R= EG_* instead? That way, if aarch64_classify_address is extended in the future with new ad= dr.type values that leave addr.base in the wrong forms, this code will not = need to be updated. Thanks, Kyrill unsigned regno =3D REGNO (addr.base); --=20 2.17.1