From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2124.outbound.protection.outlook.com [40.107.237.124]) by sourceware.org (Postfix) with ESMTPS id 5E3633861020 for ; Mon, 20 Jul 2020 13:52:53 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 5E3633861020 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=oarcorp.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=kinsey.moore@oarcorp.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=FTPQa7ezAOJFY1jwGjDOiBB1pftKU2mq6fWCIKmXgvqSk49t6W4658G4ZlaCcLOQtNo/vv0TeZ9LtB/MUEtuNO6twKBOzyjFMt3by0u0Z+7FAsq3Y8vSqL4xz9TgdKju+DdoWYEhjZ9i0LIWPBBiHQ4qLHLISQTDSRULOL0vbecESi4BDiLjUJPX2Wl5yyw0PLkhRX3o1wYv5KcabzqKqhO185AyzOTsoOVRjwaJ8nkdjvW6+/Mp8fwQIJ57LeITqUC8fUZp4Tq47FTzCEN1tvPh5+hgTRPstJdTXiurFo0LJ7xPVuajruqdYXhAKTPK9yooT7EzdxkQXxAm6r1PAA== 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=jdnn8OC/A9rbJLRseImQ6HwlZ+oxmZANoHPekioc8iw=; b=Mtq2V21vgZCqZ3PhMbOW/SePSe2iSulihH9lHm2cTTUD02NVeADeS4woU1xadDYwfhXKIYOaKGaLw1CBh3hoUKbE5avSkNRhEsmnn4rQuxUqaO5B9lpXIqnWq81/JaWbP7z+3Juh2r4idWWDfztl33nYJI7nXolkSC+CArUCFS8+30DBdRDze57Ta1BMAGFBdWdkyjrx0101THZc2NrUigwEnDVEiYKt7D01qLv/2yf2j/IEIduwpfjtmHAOhUe1KSHhFKN+6G72FfhvDJ5MC1MWE3IPtITtDE2xFEWanjXb+y0iFcf8wSy78YyBiKeGQaTM6Vu6jaIjhpH/awqq4A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oarcorp.com; dmarc=pass action=none header.from=oarcorp.com; dkim=pass header.d=oarcorp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oarcorp.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jdnn8OC/A9rbJLRseImQ6HwlZ+oxmZANoHPekioc8iw=; b=EtUdYIoxgHkQ8Xg/JKmqwkqvjFroHKv2fPKeJA2iIkoVXmRvl1if+13lpM0dDD6ieggN/qmvecG8hJebPimepnaat0+XB2uqmWGZCUEhnre/kcbpWymBLyrmzg22PlKKjTac/6KFmkNGdb1rE1MLIeLPIuq5uol+JEwRTF516HE= Received: from BN6PR19MB3201.namprd19.prod.outlook.com (2603:10b6:405:7e::31) by BN6PR19MB1188.namprd19.prod.outlook.com (2603:10b6:404:f2::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3195.24; Mon, 20 Jul 2020 13:52:51 +0000 Received: from BN6PR19MB3201.namprd19.prod.outlook.com ([fe80::d42b:235c:78e1:a0ab]) by BN6PR19MB3201.namprd19.prod.outlook.com ([fe80::d42b:235c:78e1:a0ab%6]) with mapi id 15.20.3195.025; Mon, 20 Jul 2020 13:52:51 +0000 From: Kinsey Moore To: "newlib@sourceware.org" Subject: AArch64 ILP32 strcmp bug Thread-Topic: AArch64 ILP32 strcmp bug Thread-Index: AdZemAFv+u4FfRzPTcqdUHJxesNXSA== Date: Mon, 20 Jul 2020 13:52:51 +0000 Message-ID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: sourceware.org; dkim=none (message not signed) header.d=none; sourceware.org; dmarc=none action=none header.from=oarcorp.com; x-originating-ip: [136.53.69.43] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 7297b9fa-b784-43b3-ad33-08d82cb431e9 x-ms-traffictypediagnostic: BN6PR19MB1188: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: +CZwYAnrFqgpc7yrsHEz8GHt4Vf5+ddD1WXy60TwVCYver170269q545JO/hfR/9yp7ZgUlJ7NAqtIOON+Yk4sVMVbV8fDVYjwDeIOzE8d1xyWaLQthupWKYW9lFdQMI/QeB5CsEVuqgIv+/EAFNCBcy5gSXski2fG9hhAK6NbBxvc0LOE1sKdBF7kkmCoPm/EYU45C5wgWK9xxnM6eA61LH7eEoH2U4b3J8QzRGBpiEs1hQEDbY3oUcEYt6lOR7nKAuhId+xYQulmNuRTeuxxKhEeLAE9JjStyM2PsephBqY7BN67f8FMyeyHzJpJfymWQuvuGD7BJwUxx1/AGUlVetfR32oezF3XYr16WFUgZT36fdukla1F2DqVLjmD73 x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN6PR19MB3201.namprd19.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(136003)(376002)(396003)(39830400003)(346002)(366004)(316002)(4744005)(5660300002)(66446008)(44832011)(186003)(9326002)(7696005)(8936002)(6506007)(64756008)(66556008)(86362001)(66476007)(66946007)(26005)(76116006)(8676002)(33656002)(71200400001)(6916009)(55016002)(508600001)(2906002)(52536014)(9686003)(40753002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: aMIS6EEcXlUr1mfdflkVPogtPMRGT6GkrGRkJyAq9w+3B+IHNgL0L/GDAzBZdT5O4UN3IBxuDuql3/hDVOpt4e78e9K5hGE2Ecr8A8w7iCLN3irbb4K5MRZG2QW8ytuZBbCV7frmc74oKi30cU1SqQ5s76cCxngKxM/lXJZ6Z8OtHvDtxR7UZ2G92zj83eG0vCnZymDvo96IgGjUHiw1lLrzqXofzZ0xwX9TN3qIvRRZK+kefVO9MvsXoPUyfmTw3oOGxfx1HGxG6ldJXbsdVdiXqZHHqJ/ajj3E648BM2GsxOqvSE3GeMF5RaEcd38/K6M2bXuNCRFGo7oSRASaNQ1dh0FiozPzXovaGW1TZShIRBWAmE/xHv1xC4o0vnY2N+8t2/wE39AmaDcEBF5W1JXt9UgiZvge6nRlabVpI3+JCfxvvhsLriBPAa1cRYrIhJ02eF0BgX1dNgfbxwzdUfaiIdynZqOIo96Z/16T2mo= x-ms-exchange-transport-forked: True MIME-Version: 1.0 X-OriginatorOrg: oarcorp.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BN6PR19MB3201.namprd19.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7297b9fa-b784-43b3-ad33-08d82cb431e9 X-MS-Exchange-CrossTenant-originalarrivaltime: 20 Jul 2020 13:52:51.2980 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 7bdf32a6-03de-4c70-a71b-8665ba1294e3 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: wKVEEndqCFYDkw9Ks1ATqmu1GnIZsLoceQW1FXOv0ZWVxy0Qgl3pV+fi5JAeWMyJw2651YoRSVSSvqH1Ymh+LQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR19MB1188 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, HTML_MESSAGE, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: newlib@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Newlib mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Jul 2020 13:52:55 -0000 Hi, It appears that the hand-coded assembly in AArch64 strcmp does not sanitize= the incoming address parameters in x0 and x1 when compiled for AArch64 ILP= 32. Based on my reading of the AArch64 Procedure Call Specification and GCC= 's output for similar function signatures, the callee is responsible for sa= nitization of the pointer addresses. I encountered this because I have a st= ruct containing a pointer and length returned from another function that ha= ppens to get packed into a single register (x0) and GCC passes this unmodif= ied into strcmp as the first argument. According to the aapcs64: "Any part of a register or a stack slot that is n= ot used for an argument (padding bits) has unspecified content at the calle= e entry point." I suspect this is a problem for the majority of hand-written AArch64 assemb= ly in newlib. Please let me know if I missed something. Thanks, Kinsey Moore