From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 108740 invoked by alias); 24 Jul 2018 18:19:03 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 108609 invoked by uid 89); 24 Jul 2018 18:19:02 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-2.3 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE,SPF_PASS,URIBL_RED autolearn=ham version=3.3.2 spammy= X-HELO: relay1.mentorg.com Received: from relay1.mentorg.com (HELO relay1.mentorg.com) (192.94.38.131) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 24 Jul 2018 18:19:00 +0000 Received: from svr-orw-mbx-03.mgc.mentorg.com ([147.34.90.203]) by relay1.mentorg.com with esmtps (TLSv1.2:ECDHE-RSA-AES256-SHA384:256) id 1fi1tg-0004pq-Uw from Sandra_Loosemore@mentor.com ; Tue, 24 Jul 2018 11:18:56 -0700 Received: from [127.0.0.1] (147.34.91.1) by svr-orw-mbx-03.mgc.mentorg.com (147.34.90.203) with Microsoft SMTP Server (TLS) id 15.0.1320.4; Tue, 24 Jul 2018 11:18:54 -0700 Subject: Re: [2/5] C-SKY port: Backend implementation To: Jeff Law , "gcc-patches@gcc.gnu.org" CC: Xianmiao Qu , Yunhai Shang References: <49d0a2c8-51a0-4a74-d015-0bf1c1098e38@codesourcery.com> <28cb3a6e-4594-3545-5236-c68784af6a57@codesourcery.com> From: Sandra Loosemore Message-ID: Date: Tue, 24 Jul 2018 18:19:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 8bit X-SW-Source: 2018-07/txt/msg01417.txt.bz2 On 07/24/2018 09:45 AM, Jeff Law wrote: > On 07/23/2018 10:21 PM, Sandra Loosemore wrote: >> 2018-07-23  Jojo  >>             Huibin Wang  >>             Sandra Loosemore  >>             Chung-Lin Tang  >> >>         C-SKY port: Backend implementation >> >>         gcc/ >>         * config/csky/*: New. >>         * common/config/csky/*: New. > > Let's avoid gratutious whitespace that attempts to line up conditionals. > As an example, look at the predicate csky_load_multiple_operation. I > think just doing a quick pass over the .c, .h and main .md files should > be sufficient here. OK, will do. > I'm not a big fan of more awk code, but I'm not going to object to it :-) > > Why does the port have its own little pass for condition code > optimization (cse_cc)? What is it doing that can't be done with our > generic optimizers? This pass was included in the initial patch set we got from C-SKY, and as it didn't seem to break anything I left it in. Perhaps C-SKY can provide a testcase that demonstrates why it's still useful in the current version of GCC; otherwise we can remove this from the initial port submission and restore it later if some performance analysis shows it is still worthwhile. > Any thoughts on using the newer function descriptor bits rather than old > style stack trampolines? Has that been committed? I vaguely remembered discussion of a new way to handle nested functions without using the trampoline interface, but I couldn't find any documentation in the internals manual. > I don't see anything terribly concerning in the core of the port. The > amount of support code for minipool is huge and I wonder if some sharing > across the various ports would be possible, but I don't think that > should be a blocking issue for this port. Yes, that code was clearly copied almost verbatim from the ARM backend. I left it alone as much as possible to simplify any future attempts at genericizing it. > Can you update the backends.html web page here appropriately for the > c-sky target? Sure, I can take care of updating that when the port is committed. I believe the right entry is "csky b ia" > I'd like to take a closer look, but those are the high level comment's > I've got this morning :-) Thanks. I'll wait a bit for more comments to come in before preparing a revised patch. -Sandra