Message ID | 20250131171232.1018281-12-aleksandar.rakic@htecgroup.com |
---|---|
State | New |
Headers |
Return-Path: <gcc-patches-bounces~patchwork=sourceware.org@gcc.gnu.org> X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 651513857B8F for <patchwork@sourceware.org>; Fri, 31 Jan 2025 17:24:17 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 651513857B8F Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=htecgroup.com header.i=@htecgroup.com header.a=rsa-sha256 header.s=selector1 header.b=K442Yrp9 X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from DUZPR83CU001.outbound.protection.outlook.com (mail-northeuropeazlp170130004.outbound.protection.outlook.com [IPv6:2a01:111:f403:c200::4]) by sourceware.org (Postfix) with ESMTPS id 906223857B9E for <gcc-patches@gcc.gnu.org>; Fri, 31 Jan 2025 17:13:53 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 906223857B9E Authentication-Results: sourceware.org; dmarc=pass (p=reject dis=none) header.from=htecgroup.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=htecgroup.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 906223857B9E Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=2a01:111:f403:c200::4 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1738343633; cv=pass; b=leCdmrzj0IQmyqGg2gscvI/DR5ukTywuUPkEnU/b8bASBs0Yk/UfsvmwB/HF9LRLlMreTh6qZy9Q/7eFoQBA1gBfLxrfw97LNWxDeeoR4HQZUYJGMRwPGWHYO7+ZZ5O+GaSZB1FfT2QkeD5JSWVdetVg0Qmnr/eXjs+pq+somVM= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1738343633; c=relaxed/simple; bh=xdvl90R/PYYgtbwUkSIdc6rbZPZvuDrBrLhfdwkWfVM=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=TBUl1JoUDrCNsgA3+9jwmw7c8IXHfn+Eh8X1ZHaeMJWxYkr8QtpfECvldEWqHGdhzLXdDL3wJ10CUmttpvtvg48iL5niYCeE4gtUEzJK6uMGKL7JNkU/yp5NV80zfP/mFh6sxc21p8H4tT8YUNLIn8Lp6oo8L9u5snkT07L9Mhk= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 906223857B9E ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=JoSmXNfwmJ1liVrPgjkLZJU4K3vt4vjfE98yKR3KGRQOJWAxZRlRV141q07GhZhNODKGOydFHWYBTnScR65opC+WbMZB826OhwYCqs5ftZYBfaTj2MIGv4jQYdZ8vEbwovznNZksVOFlzIvOMNXa3MOks3gK0VWKHNp8j1mU/K89ITrghb/eP7cJTGKqUMdPdvZuj1u5VsRBILHc+kxcY1+Tj4gNtbUVQGmwFwoCaV0BPIyHl8Kq6tzIHOnuvNYIDQIJ3DRHGNGGiwmudNb7BBc8NwVgacfyGiiKGRitcCYxj6fBVNAak7BG8BgNrVwE/ZR3BNq+kud7MBfs4zEafA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=pCm3WizKqVgsQxC5lj/1jgOahlL07QH+fTnptjXF9Hg=; b=don98abVnnwwa6LcXkP6oCzwU5O9foSzHkazC8Lnmak1DmSOfx3UL/b14XC0CfVq0GIvf/Dc3vwss9EcWLBCtqmoVyqRANfVyrEOpkwIQT+Jr+aBWBebCH8MWin0kuBF2v9IC5JcrZ1I088zJPu2lFWbKjeY72XALEcICKuXHuVvCH4xvXaVv8zbfGcM0YZibXSCtA9pxExHbzwUg00+ieSXGp0IXL7MbDgGpbBF4uC2eBZTTayQ7vsrobmSjsLMahuYkkng1EMLPklOw2eDtCH2ObXnOZdkVMSzaih1h0usz6MWqgBTuujaxRjkgLlJWZcX/0tf8AcDuruxKNc5QA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=htecgroup.com; dmarc=pass action=none header.from=htecgroup.com; dkim=pass header.d=htecgroup.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=htecgroup.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=pCm3WizKqVgsQxC5lj/1jgOahlL07QH+fTnptjXF9Hg=; b=K442Yrp9Un2NcNamH8DW2nJaRoRgCMGwSMzMTbqGgCpPALlXv0kAXDPvrQ+cQBnPw5s1CPAGUTPOtjVgcPFbXpmVtyF4knd9J4LPgcr5ilKEDGM+Y+Au01ii95XYpWJEaGyMimDHQ/3DRWRCs0zJHfKoJMADo2WOHQCdRmuJQaWDcVUwMy4tyfUC96wtxg6s02/Zf/EBw/o8iClWlnAazk35GtsI9sV0H9BBGhdvVMJLSFxajAr00HypgJXt9hBCI80LngNI3YNiDHkKRbee8h7lSdPeXlzavw0yep112kL/XZmOUMswxgWyrh6gfIETbpedIonFv7E4uSP/5IeNQQ== Received: from PA4PR09MB4864.eurprd09.prod.outlook.com (2603:10a6:102:ed::17) by PR3PR09MB5442.eurprd09.prod.outlook.com (2603:10a6:102:17d::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8398.22; Fri, 31 Jan 2025 17:13:24 +0000 Received: from PA4PR09MB4864.eurprd09.prod.outlook.com ([fe80::a02b:9d5c:eca5:e024]) by PA4PR09MB4864.eurprd09.prod.outlook.com ([fe80::a02b:9d5c:eca5:e024%6]) with mapi id 15.20.8398.020; Fri, 31 Jan 2025 17:13:24 +0000 From: Aleksandar Rakic <aleksandar.rakic@htecgroup.com> To: "gcc-patches@gcc.gnu.org" <gcc-patches@gcc.gnu.org> CC: Djordje Todorovic <Djordje.Todorovic@htecgroup.com>, "cfu@mips.com" <cfu@mips.com>, mfortune <matthew.fortune@imgtec.com>, Faraz Shahbazker <fshahbazker@wavecomp.com>, Aleksandar Rakic <aleksandar.rakic@htecgroup.com> Subject: [PATCH 10/61] Add -mgrow-frame-downwards Thread-Topic: [PATCH 10/61] Add -mgrow-frame-downwards Thread-Index: AQHbdANv6lMbnFxTAkuzUphsElMT5g== Date: Fri, 31 Jan 2025 17:13:23 +0000 Message-ID: <20250131171232.1018281-12-aleksandar.rakic@htecgroup.com> References: <20250131171232.1018281-1-aleksandar.rakic@htecgroup.com> In-Reply-To: <20250131171232.1018281-1-aleksandar.rakic@htecgroup.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=htecgroup.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: PA4PR09MB4864:EE_|PR3PR09MB5442:EE_ x-ms-office365-filtering-correlation-id: 8ccc40f2-c5f0-4148-5008-08dd421a91d6 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|366016|1800799024|376014|38070700018; x-microsoft-antispam-message-info: =?iso-8859-1?q?0yXT3ApbDdxj78GPqol/GqFGcn?= =?iso-8859-1?q?rvO6joYssPw0D+aEw2U4a0hA5+qYiqzghSU0B3UnlihC1OqNcn00DfXuSeFJ?= =?iso-8859-1?q?6fkS95FYumh/tEaUoDBg5OEwVmO56Ka/WTGS4YpzhIpT3vO6ipLyhsJAcGFh?= =?iso-8859-1?q?VXbLMpxS4/gv7e5f1j6tGuXI/MpihsHepW1wFTMenZcHgcSYgQ0htXbbN3R7?= =?iso-8859-1?q?G55k+zdMrLKmTKyWS84rI6FwmCS/sU33SJSS8zjmaX7/WtTfmR1cmzGAfoV1?= =?iso-8859-1?q?Tx2UyoVfFNxTNL83Y1PF7T7MmzXHrMnaIkg00069W6u9K4lK17HPxiY4/gHh?= =?iso-8859-1?q?QP6X1YFBLbuJ5cprntpiDZOQemxXiWvxP8eHHpzBkyTU1z3KIZxSYQTFcLAH?= =?iso-8859-1?q?Y0LDtcW1p8VD/bQT3yxqaf02o2QKcBssmiChJZkUvLmxXqBv3+zwbDQuOgnU?= =?iso-8859-1?q?e1KTMb5MiN1ST8EtvovKWMK5irpA0T+OvBpwNoQGPjUWhNp9SYnn3upm1HPY?= =?iso-8859-1?q?WSQJBcTn46Y4rUdcRa2ib/aKzhDiUOZ47o4Vn4qQKo9Qj9oTDxCao6x5wz5f?= =?iso-8859-1?q?bblNcWUN0Mn1mm1bwr0vBNJ2aTSo/vfAE1uG07wESpJ91RMIefEFVxKFHgCa?= =?iso-8859-1?q?bkI90eZ+nNYElEFKQPOveTfPBPqIpyhcoXwqgKf2FTRyJy0ycpO1OpbWqiWi?= =?iso-8859-1?q?Y1aAb8qZi9PDlDOnLP4bVp5vnI3w5lgGbxS9DMln90MDaYAZeHpORKxk7bGX?= =?iso-8859-1?q?D9DuW2R/T4oA4a9ECVUQj3+8SzGMgWCqyHSuSsCMY/2BV8+UEv409nI7XaKj?= =?iso-8859-1?q?F2XPIfK3lFJy2DrTjxlCv68vY9segwdYoAROEiXjkt6jPIXlq+jtuK8uC613?= =?iso-8859-1?q?W/fi89Ds6HfkGE7OoewbXjQGJnLWlxkMa8FJkYwW7QjmTOB7Js3lfpsmGmtg?= =?iso-8859-1?q?dCmpPZg2Hv1DEvthUDhf3jNe4kyeyJ9EkPQLTNESyAppgzuDHb3CJh39Hb7i?= =?iso-8859-1?q?WLrJTEThy3bGUAmTVS2jV04K5V7P61fr/rfkcqSqknoq0d93NeMiQ4jK2lmA?= =?iso-8859-1?q?QVqrqg223y8oszhpSor17AhORB/3jATm1xKkedEDwXMvd/MoFw7M97F1Ej7N?= =?iso-8859-1?q?+FPiEFrt57phiwOoKY+jqeZsUnr6AXYT6JYpjxlAwwiU7xzmb7l3x3d36cKf?= =?iso-8859-1?q?5hK+ObT+uENXsv0c9L+OUWOURm1GJuoLpfkFefnGECSQWNyqP7GEspk+pjuW?= =?iso-8859-1?q?+f3F6nVKFlzld+AoLemCU+JpWZv4ikttn9FSugxp388qdgEAMVXfEmkHXCn9?= =?iso-8859-1?q?VngEJFrMX8LP6NaSoK/H73LJfQ6fJ463OHWJJu9ANXfLLQqbbk34dDJSOFeY?= =?iso-8859-1?q?jLMB2arUionXneOa2+zCAhIAlxz8aoIQK27z9zcYRCLMucHN4if1N+b/EGGI?= =?iso-8859-1?q?CgPpQU+VWfKwJPnW3+OThWm7RC8OODU0ltNZZ1F2pClSeNOadct7n6tXcG1W?= =?iso-8859-1?q?IxuHR5?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PA4PR09MB4864.eurprd09.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(1800799024)(376014)(38070700018); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?q?fZIZ5kRi3EkA3McY4NhbIlb?= =?iso-8859-1?q?1SQtQvCEHsLNXYtXt9o55rGYs0tSexuuk/HVC4Ti0wwOHjGdEoCF1dQ0vAqT?= =?iso-8859-1?q?RaFCm+yupsJJ/VIAAzhgWC+OKqfTEo1U7DWayJddHrqMuwMFJP4w3DtyIcFT?= =?iso-8859-1?q?yx0m+Zwad5woQQDgpBuqWhrPDPuCNhbCkgByU1coQQvcG2UXxg8X5ARyetG1?= =?iso-8859-1?q?8BYl2E6cU0tS2NEeRbeFwdkPazRt+9p466+rhL63nNjNfcmvSSbKPSbUISCC?= =?iso-8859-1?q?TlWMWfBjdHsBVcQvfw6x/Pm/VnhDYhiXNIFTGqW53b+jfvDij6vB8PE8D1wA?= =?iso-8859-1?q?VTz7zqI9SuyERjDew3mFz3vVgwtU/cb3ttZ/m0i/HFCWXVePt7cMg7YqFRxt?= =?iso-8859-1?q?P/CaM5SNNG1dCmEx86n1LyVonB+IZDddNPZpT9BPCZqAkBpHz71EBsZ1+p13?= =?iso-8859-1?q?je1C66K3HaEAX9lsFrbYekPYekKwqXJYJBLjFRqJa8ZDsqt9mnkrxxd7Tv2F?= =?iso-8859-1?q?5lGb2kBkIMYPeOUBGpUxJDEN6SNGpYlSoog3jFkhbZ9rPaWM8Pe8usaqJ3MS?= =?iso-8859-1?q?/mL77EKaBWgqTFglZiWJeLOg0/6749+pfoAQbIYr/wB+zoTP9QqPsQ6MjjZ8?= =?iso-8859-1?q?hM1L+SYIxQMo2R8js3FH716Pm5k3pHQU+AupRi0W8JgDQ9vuNsAVqfLW14ah?= =?iso-8859-1?q?GQVclmayDzNeG4IdQgs7e6YlDFictcruTNnXAKYESJr+EOCd41V/o3S3rdB0?= =?iso-8859-1?q?tyb8GFjvirnfsto0qArfzbG9ukyFnOjOZs0HSjwigQR64TA8oxL07r/xOGDV?= =?iso-8859-1?q?33D1uKfYSkt0HUyw3pbx0Hz6dEHlQxrxGgquzvx/1yBV2mJXRcFNXdXsUpWX?= =?iso-8859-1?q?ryhufEyu9Uj7Mr6UUFDiXGeU2OYhklztKeKkfWpEbSOPzY/2dXhSy/jXi0Lt?= =?iso-8859-1?q?aA8wNbSlbnl7PTYCs4n9w+HKayg1w9hBpkcMv4zaqUlRqHFMeaG+ONSXOf7C?= =?iso-8859-1?q?TgE1hv1ryNFYRF4FBE//Vu9Z57legxL5ijuenKu2eZ3JhyPOilT/FYVlo6ut?= =?iso-8859-1?q?VQHE338Lz9VYwihVSEioWiZt9MuZR+8nkKnBLQ3amSsCVzp9LBcOM6yv+6Tf?= =?iso-8859-1?q?C2oNMeK669zxe2xUrEkQ26iiVj+mjn+zLkuPW7ptrFJp/2+IEOg6DQvwKRtr?= =?iso-8859-1?q?3msUgIY6avRyP9m+rBLQ/7Zxen7kCDoVVo5fPIvkEDM+YaW4q5EU+GfKVJ4m?= =?iso-8859-1?q?yPfrpqTQfb37+Ior8HLjrBQZ4r65+vlpikutt3U04T6gLVDQ/W302TknSY0s?= =?iso-8859-1?q?p6VMupe+tiTWq04xzmCgV5N5eu8NGiAxA+ng/sfTXYGACpnB+C36qw8TegUJ?= =?iso-8859-1?q?iYfBn9E0XyyVXNXBOZ0ealoBJXFOkZbWK0GK+FiQcgxLdzo5H2wgVZ+HFtXD?= =?iso-8859-1?q?o6MtfdbZT1HpMOD9di8u82zAA8baEf8s8QA3hvdwRYoWjSb459N5u2iwJO/L?= =?iso-8859-1?q?FEoBbXIx8Hd1mu44VXuIi/GX7XmtX6NQDAUzbcDs3/yXk1dHL4Nl5hUzk+sl?= =?iso-8859-1?q?4zplbXj9t4MkjlociSbSCZL8oWJUXBVZNZn5fcC92ywxGds1RdWuAQ1T29gs?= =?iso-8859-1?q?q0b03b4xHcbcIezokrNepd31lsWbdS+/yr26LawwBvpkmik5IXhfA0Kluns0?= =?iso-8859-1?q?=3D?= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: htecgroup.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PA4PR09MB4864.eurprd09.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8ccc40f2-c5f0-4148-5008-08dd421a91d6 X-MS-Exchange-CrossTenant-originalarrivaltime: 31 Jan 2025 17:13:23.9338 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 9f85665b-7efd-4776-9dfe-b6bfda2565ee X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: mbN/SAL5+zgt01DSE3dGIRQOU3/fSJalZDIODmw64Wozt020Cws4/sKyjahi5tXR+wKsjxUIkEMDIlWRkAzlN+ES32D/oX/QZaJdanKkeR4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR09MB5442 X-Spam-Status: No, score=-12.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, SPF_HELO_PASS, 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 X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gcc-patches mailing list <gcc-patches.gcc.gnu.org> List-Unsubscribe: <https://gcc.gnu.org/mailman/options/gcc-patches>, <mailto:gcc-patches-request@gcc.gnu.org?subject=unsubscribe> List-Archive: <https://gcc.gnu.org/pipermail/gcc-patches/> List-Post: <mailto:gcc-patches@gcc.gnu.org> List-Help: <mailto:gcc-patches-request@gcc.gnu.org?subject=help> List-Subscribe: <https://gcc.gnu.org/mailman/listinfo/gcc-patches>, <mailto:gcc-patches-request@gcc.gnu.org?subject=subscribe> Errors-To: gcc-patches-bounces~patchwork=sourceware.org@gcc.gnu.org |
Series |
Improve Mips target
|
|
Commit Message
Aleksandar Rakic
Jan. 31, 2025, 5:13 p.m. UTC
From: mfortune <matthew.fortune@imgtec.com> Grow the local frame down instead of up for mips16 code size. By growing the frame downwards we get spill slots created at the lowest address rather than highest address in a local frame. The benefit being that when the frame is large the spill slots can still be accessed using a 16bit instruction whereas it is less important for large local variables to be accessed using short instructions as they are (probably) accessed less frequently. This is default on for MIPS16. Cherry-picked 7c1bf276c0ebb45c87fe7bc30f057866d6153ec4 from https://github.com/MIPS/gcc Signed-off-by: Matthew Fortune <matthew.fortune@imgtec.com> Signed-off-by: Faraz Shahbazker <fshahbazker@wavecomp.com> Signed-off-by: Aleksandar Rakic <aleksandar.rakic@htecgroup.com> --- gcc/config/mips/mips.h | 10 ++++++++-- gcc/config/mips/mips.opt | 4 ++++ 2 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/gcc/config/mips/mips.h b/gcc/config/mips/mips.h index cf3a4e04880..535172d3406 100644 --- a/gcc/config/mips/mips.h +++ b/gcc/config/mips/mips.h @@ -2365,8 +2365,14 @@ enum reg_class #define STACK_GROWS_DOWNWARD 1 -#define FRAME_GROWS_DOWNWARD (flag_stack_protect != 0 \ - || (flag_sanitize & SANITIZE_ADDRESS) != 0) +/* Growing the frame downwards allows us to put spills closest to + the stack pointer which is good as they are likely to be accessed + frequently. We can also arrange for normal stack usage to place + scalars last so that they too are close to the stack pointer. */ +#define FRAME_GROWS_DOWNWARD ((TARGET_MIPS16 \ + && TARGET_FRAME_GROWS_DOWNWARDS) \ + || (flag_stack_protect != 0 \ + || (flag_sanitize & SANITIZE_ADDRESS) != 0)) /* Size of the area allocated in the frame to save the GP. */ diff --git a/gcc/config/mips/mips.opt b/gcc/config/mips/mips.opt index c04a3d9dbfa..ca4d377291e 100644 --- a/gcc/config/mips/mips.opt +++ b/gcc/config/mips/mips.opt @@ -473,6 +473,10 @@ mframe-header-opt Target Var(flag_frame_header_optimization) Optimization Optimize frame header. +mgrow-frame-downwards +Target Var(TARGET_FRAME_GROWS_DOWNWARDS) Init(1) Undocumented +Change the behaviour to grow the frame downwards. + noasmopt Driver