From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-il1-f181.google.com (mail-il1-f181.google.com [209.85.166.181]) by sourceware.org (Postfix) with ESMTPS id 10E653858D28 for ; Thu, 23 Mar 2023 23:12:25 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 10E653858D28 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-il1-f181.google.com with SMTP id r4so114529ilt.8 for ; Thu, 23 Mar 2023 16:12:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1679613138; 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=1GipHq82mhZbwApNswR8hO0eVAaJncGtumXqhFIATsI=; b=XLYxwBQQ/02TE2UCvQPlqd1ZXhygs1NlYp2w0K+p27b0sr1plQKk6mRaft+c0CEaYa Kv1lAUXOiXvkmNLthVvj2f1CR+u0Btw5HkSU13ht4ecg7IwUJ5cP0KC3SwScGyn2qAWm ynCWQAeAMhGV7RshhTougb6+kY1AjDJ7udlFTnlrpeOLdxeHm57XH4z6I29GZiGupOUN fb8KyBVJTS8I5rLQgGLnEy1ZlzwiB4g4l8jS6vctk4zp8hhwpzp8RnnfoZik9F1sqLVl dX/yZ8h22tRP9ydn+Se/MDPKhWdu5xZO7rFb4a88054+6lUAqS2rkUVjkBzMFbX9pTmF pRqQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1679613138; 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=1GipHq82mhZbwApNswR8hO0eVAaJncGtumXqhFIATsI=; b=M/uBi6gsh5/H7bk194ySK9J7WURIz+po05IRT/8Mc3QdaUYqhFW3v5WP4slnjBta0B 7/y++k+N4GymENWkP5QBUB84wTV79JNyc+KUnnM+ozB3qyMwAOR3QDUzZ3svlwksEcqn SEOWeiCafZEQctSjGhd0D4DP3G+jCd0bCM3/fo0b5hki4Dx7b/W7O3G47fFvB/ojIlE4 S20mQpfx9hW+VUeNwty+NyLFMcMekuP8ZhU+7FJFIdG/+ykv38h+fq+y0uJJoBkKuYdE pda8zZw51EidNVfRZdmnj6j4nJg/EiIGKe1bdmnYIltqrCCnc5LSGnoscgyFO/l2XUl5 62Pg== X-Gm-Message-State: AAQBX9cZdX/0K6J44uuTdGwLEUxhgjwFjMKty4qVBLvC2LdWYbRkSZWq 962msbv1OwxhKdD0DZfKSG4= X-Google-Smtp-Source: AKy350aXeNcW4nCH4mj7na+URyBvCQvxUp0gKKe54eWLLcrRumSiJFb6EByxSIytjrdM/Ud3DtsSWQ== X-Received: by 2002:a92:dac7:0:b0:318:ae1e:ccde with SMTP id o7-20020a92dac7000000b00318ae1eccdemr718850ilq.32.1679613133073; Thu, 23 Mar 2023 16:12:13 -0700 (PDT) Received: from ?IPV6:2601:681:8600:13d0::f0a? ([2601:681:8600:13d0::f0a]) by smtp.gmail.com with ESMTPSA id a23-20020a027357000000b00406227162fesm6249571jae.32.2023.03.23.16.12.11 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 23 Mar 2023 16:12:12 -0700 (PDT) Message-ID: Date: Thu, 23 Mar 2023 17:12:11 -0600 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.9.0 Subject: Re: [PATCH] rtl-optimization: ppc backend generates unnecessary signed extension. Content-Language: en-US To: Peter Bergner , Ajit Agarwal , gcc-patches Cc: Segher Boessenkool , Richard Biener , Raphael Zinsly References: <4c0b6b4f-bbc1-8dd0-a91c-ffed028b4873@linux.ibm.com> <365cfb50-4313-d44e-6ffc-77473b20c670@linux.ibm.com> <5834b0cb-dd25-c55f-2cf6-9aa6b8372724@linux.ibm.com> <29ab8ff7-20d5-183f-a0ce-c82758488b64@linux.ibm.com> <1a482ac5-404b-0787-c682-b10d13dc76ee@gmail.com> <247f5af3-5db3-4a73-b636-95e006a3a649@linux.ibm.com> From: Jeff Law In-Reply-To: <247f5af3-5db3-4a73-b636-95e006a3a649@linux.ibm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,NICE_REPLY_A,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,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 List-Id: On 3/23/23 10:53, Peter Bergner wrote: > On 3/23/23 11:32 AM, Jeff Law via Gcc-patches wrote: >> On 3/23/23 10:29, Peter Bergner wrote: >>> I'm sorry that I don't know how REE works. Why can't it optimize this? >>> I see in the REE dump: >>> >>> (insn 20 18 22 3 (set (reg:DI 4 4) >>> (zero_extend:DI (reg:QI 4 4 [orig:120 cD.3556+3 ] [120]))) "pr41742.c":6:41 8 {zero_extendqidi2} (nil)) >>> (call_insn 22 20 41 3 (parallel [ >>> (set (reg:DI 3 3) >>> (call (mem:SI (symbol_ref:DI ("memset") [flags 0x41] ) [0 memsetD.1196 S4 A8]) >>> (const_int 64 [0x40]))) >>> (use (const_int 0 [0])) >>> (clobber (reg:DI 96 lr)) ... >>> >>> Is there a reason why REE cannot see that our (reg:QI 4) is a param register >>> and thus due to our ABI, already correctly sign/zero extended? >> >> I don't think REE has ever considered exploiting ABI constraints. Handling >> that might be a notable improvement on various targets. It'd be a great >> place to do some experimentation. > > Ok, so sounds like a good follow-on project after this patch is reviewed > and committed (stage1). Thanks for your input!Agreed. I suspect that risc-v will benefit from such work as well. With that in mind, if y'all start poking at this, please loop in Raphael (on cc) who's expressed an interest in this space. Jeff