From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-qk1-x72d.google.com (mail-qk1-x72d.google.com [IPv6:2607:f8b0:4864:20::72d]) by sourceware.org (Postfix) with ESMTPS id A44D23858D1E for ; Thu, 3 Aug 2023 04:59:37 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org A44D23858D1E Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-qk1-x72d.google.com with SMTP id af79cd13be357-76cded293e8so30144885a.2 for ; Wed, 02 Aug 2023 21:59:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1691038777; x=1691643577; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=IqhXvBKfkcc5hAvyIDmtTs2WgSh6ElmycX3f/n2vR5I=; b=Sw7gKAGwgPrlRIatEwy4MXVIOqwgeUY31WErbZ5wIyfnpD99p+YVe/iiNPD/jIAmem 8h7hZ+ah6/518Hd74GHyyPN+3QGwmqcWAhqQiUgNTJsB/FT9RTQ7culWf962GOu5YsW/ g3KcQYaBjG46cKthWP4rdM1SPElhDdcdiDPFHAnGQpiKAQoVQtoM4ItLnHJCE63FLdXK AXkYqCTvtSuDWjfbUd5G1RM4enxlTw6Fn2B2teu9u6LENylpw0QVywph+LlbZB5nTHtH SlFCRiWaeJoJs/SiK/V/xGSjQ+430YF1YJu169RkaGeZwuqGPEtqQi3tTGaWkvs75Xhp Naqg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1691038777; x=1691643577; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=IqhXvBKfkcc5hAvyIDmtTs2WgSh6ElmycX3f/n2vR5I=; b=J9j9jXilmCvhoEJWQrNHglHB6IuV2GkMNZotqd4zv+TwzU4eXjKBzwPuxPBBDzntue /oaRZ743iRsvBq3q7sHSyg79lgm6kBE748GOJIUl9joAD3mZwaPNdklYt7pRALUvvF49 4csq6Bvzm0plydhbiWK+W8jfVHSmyH3Udljw7vTQaKdFR2S3dZtAWPm59sWHGnrUjSLN JuC4/hccbLnv5QTjy9zKKKDeT82tMqqux3IQRyGQUZ8Ni81m7keKlFWUGCT6ewOxTKwL eT5WKIWZbQkc7jxlMGTJzUQPWWsmQNxAhTJGhA5nb2p05WH2QuLDfvl0idzjnBsVNgby 2gbg== X-Gm-Message-State: ABy/qLYDnLjBmJFJzWhXtcwIqlVnimMIU5vGyTpR/qTksXjLTdP0BGZn zp2vYtzw3YoMdRYKIUCBTjUB3ooXxkZgRg== X-Google-Smtp-Source: APBJJlGvj1UgP+O17PME0oxwx7NzUpcISk9ua4R8nLewX3CUbIQVlp1zEBPnhHQPs5CZj0wbXkDGRQ== X-Received: by 2002:a05:620a:31aa:b0:76c:bd7a:8ba3 with SMTP id bi42-20020a05620a31aa00b0076cbd7a8ba3mr10254267qkb.18.1691038776769; Wed, 02 Aug 2023 21:59:36 -0700 (PDT) Received: from [172.31.1.103] ([172.56.168.124]) by smtp.gmail.com with ESMTPSA id y4-20020a170902ed4400b001b7ffca7dbcsm13297230plb.148.2023.08.02.21.59.35 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 02 Aug 2023 21:59:36 -0700 (PDT) Message-ID: <8d876721-3e92-ef10-1d81-39660d4f72b0@gmail.com> Date: Wed, 2 Aug 2023 22:59:33 -0600 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.12.0 Subject: Re: [PATCH 3/5] [RISC-V] Generate Zicond instruction for select pattern with condition eq or neq to 0 Content-Language: en-US To: Xiao Zeng , gcc-patches Cc: research_trasio , "kito.cheng" , zhengyu , eri-sw-toolchain References: <20230719101156.21771-1-zengxiao@eswincomputing.com> <20230719101156.21771-4-zengxiao@eswincomputing.com> <51e4b6e3-ef07-8462-f2d0-fc56f5299391@gmail.com> <2023072917142990536214@eswincomputing.com> From: Jeff Law In-Reply-To: <2023072917142990536214@eswincomputing.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,KAM_NUMSUBJECT,NICE_REPLY_A,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On 7/29/23 03:14, Xiao Zeng wrote: > > 1 Thank you for Jeff's code review comments. I have made the modifications > and submitted the V2-patch[3/5]. Yea. I'm adjusting my tree based on those updates. For testing I've actually got my compiler generating zicond by default and qemu allowing zicond by default. I can then run the execute.exp tests which validate code correctness to a reasonable degree. > > 2 For the calculation method of cost, I hope to submit a separate patch[cost] > after the V2-patch[3/5] merged into master, which will focus on explaining > the reasons for calculating cost in the same way as in patch[4/5]. I think the costing problem is going to require its own little subproject. GCC's approach to costing is a bit crazy with multiple APIs that behave differently and in some cases do some rather surprising things. It's a long standing design flaw. The point being that I think we'll probably move forward with the functional bits, perhaps initially without the basic functionality tests. That allows folks to start utilizing the core functionality while we audit and likely adjust the risc-v cost hook implementation. > > 4. In V2-patch[3/5], Zicond's cost calculation is not involved, therefore, all test > cases are skipped with "- O0" and "- Os". I will remove the "- Os" constraint from > the test case in patch[cost]. We may need to avoid for -Og as well. I've got that change here locally, but I wanted to go back and review that as well. jeff