From patchwork Thu Nov 14 15:34:08 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kwok Cheung Yeung X-Patchwork-Id: 1194931 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=209.132.180.131; helo=sourceware.org; envelope-from=gcc-patches-return-513424-incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=codesourcery.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.b="p4idkhh2"; dkim-atps=neutral Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 47DQWw5fH3z9sNT for ; Fri, 15 Nov 2019 02:34:34 +1100 (AEDT) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :subject:from:to:references:message-id:date:mime-version :in-reply-to:content-type:content-transfer-encoding; q=dns; s= default; b=OxYLM78VBVl7Lvejsgl53J25biflQ8MQNifQ5waEkJp/ax8QcSy2h 7nc8EVI9QNc0miJoMkie6kfT0Ju8tHYmzXnkNLIeaJ20Saosk39TvkVkDpeiUp9y OiKZNHStsMICx/5PIctP9d/tAgfpitEYDYw+g/AfeesMyfhvyayoRM= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :subject:from:to:references:message-id:date:mime-version :in-reply-to:content-type:content-transfer-encoding; s=default; bh=cdar1/UiY1gMxr9JE9RBukOIN2E=; b=p4idkhh2bXfE731eTNCHtLptft0n 4I8lImF1jFCLPisqH6QCY/yD3p+f4AXSmCrs3koNcbkCq/e4DjtVIYLo4t/dh0BR AKZIhg+qdn9PAXhX4qCa8FFozGF7jrE1UBkqIjI3o0sB/x73qLpV2rTt9D0u9agA kMgw5Xys92ugWac= Received: (qmail 117155 invoked by alias); 14 Nov 2019 15:34:27 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 117147 invoked by uid 89); 14 Nov 2019 15:34:27 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-20.0 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3 autolearn=ham version=3.3.1 spammy=HX-Languages-Length:1252 X-HELO: esa1.mentor.iphmx.com Received: from esa1.mentor.iphmx.com (HELO esa1.mentor.iphmx.com) (68.232.129.153) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 14 Nov 2019 15:34:26 +0000 IronPort-SDR: /dh7d0FnSkl/kwDIrP9nbfWe21r+NhBhaz/481CZvbZDOPnRbDGjiiMqHHnN6+ANx/EM3Mvhbm /K51ks2+E1e5JEau42vAXkGiXR+vFYtEvykJsZQ1D7oLl2LJpN47Z6okd/BtuUsbIFIb9XUhcZ jDeGAibvEaCw4k3ZoyLVeectxbQ7y1vVpJGx+rCbtAseZQwkCboCbqeCz8+8UyOsNa2gKrBtlU fZuLc+q49OzMpqHwYgrLMAkwZotxieleU9NbIOkgPnRkeYlGeIZOi63gfehAZV1zr5iT38AgjJ GEM= Received: from orw-gwy-01-in.mentorg.com ([192.94.38.165]) by esa1.mentor.iphmx.com with ESMTP; 14 Nov 2019 07:34:25 -0800 IronPort-SDR: GqG+xZU/U4oOhdsWpshznPrXxNr3Goo0lcqyyyz1sdLnUz1ncZD5Q845uZFrzkgCa7c1WMH+dg qViBgfzgBIzizhQHZut4xEeDQ3YnxlkFAxuyvKuXDKMClwQ8P4yx0/EGPQuBf+Qr1Z58zWd7b6 yQSMESAgKuuZ+9QkHq1Ik9dCBzvCFzqd6I2VMDdIpUxYpLlPtYYBk8gVAOffldWp2kbtxzIMzi HGKxDsQjheYzo7jnQllh7Neu/dF4gUnVIZjDtDDe/YcnrKP3zKmpAOHs+Sb88eCJh1cC/3SmNe UwY= Subject: [PATCH 5/5] [amdgcn] Unfix frame pointer From: Kwok Cheung Yeung To: , Andrew Stubbs , Julian Brown References: <0b37b07a-be6c-2ac6-c579-c7a522024419@codesourcery.com> Message-ID: Date: Thu, 14 Nov 2019 15:34:08 +0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Thunderbird/68.2.2 MIME-Version: 1.0 In-Reply-To: <0b37b07a-be6c-2ac6-c579-c7a522024419@codesourcery.com> This patch unfixes the registers for the hard frame pointer so that they can be used for other purposes if the frame pointer is not in use. This patch is dependent on the commit 'Support using multiple registers to hold the frame pointer' (r277895) to work properly. Okay for trunk? Kwok 2019-11-14 Kwok Cheung Yeung gcc/ * config/gcn/gcn.h (FIXED_REGISTERS): Unfix frame pointer. (CALL_USED_REGISTERS): Make frame pointer callee-saved. --- gcc/config/gcn/gcn.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gcc/config/gcn/gcn.h b/gcc/config/gcn/gcn.h index dd3789b..e60b431 100644 --- a/gcc/config/gcn/gcn.h +++ b/gcc/config/gcn/gcn.h @@ -162,7 +162,7 @@ /* Scalars. */ \ 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, \ /* fp sp lr. */ \ - 1, 1, 0, 0, 1, 1, 1, 1, 0, 0, \ + 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, \ /* exec_save, cc_save */ \ 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, \ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \ @@ -203,7 +203,7 @@ #define CALL_USED_REGISTERS { \ /* Scalars. */ \ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, \ - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, \ + 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, \ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, \ 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, \ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \