From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-il1-x12a.google.com (mail-il1-x12a.google.com [IPv6:2607:f8b0:4864:20::12a]) by sourceware.org (Postfix) with ESMTPS id B93FA3858408 for ; Tue, 22 Feb 2022 04:01:20 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org B93FA3858408 Received: by mail-il1-x12a.google.com with SMTP id d7so11583606ilf.8 for ; Mon, 21 Feb 2022 20:01:20 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=WD1d6+qlTTxNa6T5b5lVA6KNjezmHz0VtvV36CH73y0=; b=cv4RMDzJjwhvZJBO1k6BzPG2jGa2J7Klk/8C8uVuWuGbhHipOA3bRA2zohvTTMF1Wv QJVPwWUrQuWq3IECkpnBeYQg3cBZBy9aZIrU0WZMvjEZJ+/YvgYBvwrA0/lqcVtI0cf+ 3mdO4hRzCZEDOBgXFpf+bHUplHSWuT+alK0AYIlEOtBUsVuDNFs72Y9i72umxRyClr87 WS0cK8Rzk5irMYItBvlLB7c6MtN0LepKH8qQBed1NQ4uZqMVOtT7gOLNPR4qHVuWpovm OLi/JOsEQNMAtmv7Ql8pSTbTN0GMyNoCi7fkqTi83wxzXtI/NQRvRnRBgiy5XZK5CG9q MpZw== X-Gm-Message-State: AOAM5318bc7VPQ7GcVb9AXJmoxm1B2L6+2oSGCM+EaNcb/Rofa2mZkut Cevyr3MvHJ/Cti1YgUBTipwB9Rziv4AVUh/TAnL0wAKSzCo= X-Google-Smtp-Source: ABdhPJzknqCYd92+kiJ7jemzRcUJliLwklXOkv/pNgRTWOT9HKuOJ8QoM1tp0tCaUUpTz8hMhSJspbfDbMN2Jt/zJ14= X-Received: by 2002:a05:6e02:1aa2:b0:2c2:2fc1:face with SMTP id l2-20020a056e021aa200b002c22fc1facemr8140043ilv.198.1645502480005; Mon, 21 Feb 2022 20:01:20 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Zhao Wei Liew Date: Tue, 22 Feb 2022 12:00:43 +0800 Message-ID: Subject: Re: [PATCH] tree-optimization: [PR103855] Fold (type)X / (type)Y To: GCC Patches Content-Type: multipart/mixed; boundary="000000000000ccaecf05d8936681" X-Spam-Status: No, score=-8.7 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Feb 2022 04:01:22 -0000 --000000000000ccaecf05d8936681 Content-Type: text/plain; charset="UTF-8" On Tue, 22 Feb 2022 at 11:57, Zhao Wei Liew wrote: > > Hi, > > This is a partial optimization for PR103855. > > Initially, I looked into optimizing RTL generation or a more complex > GIMPLE transformation so that we could optimize other cases as well, > such as ((unsigned long long) short / int). > > However, that is a bit too complex for now. While I continue to look > into that change, I've decided to implement this simpler match.pd > transformation. > > Greatly appreciate any feedback on this patch or guidance for > implementing the more advanced optimizations! > > Thanks, > Zhao Wei Sorry, the original patch wasn't recognized as a text file. I've added a .txt extension to make it explicit. --000000000000ccaecf05d8936681 Content-Type: text/plain; charset="US-ASCII"; name="0001-tree-optimization-PR103855-Fold-type-X-type-Y.patch.txt" Content-Disposition: attachment; filename="0001-tree-optimization-PR103855-Fold-type-X-type-Y.patch.txt" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_kzxlnfth0 RnJvbSBkZDNiYjA1Y2Q3YmU3MmQwODA1OThjYjY5MzU0OWFjNzRkNWNiMDJkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBaaGFvIFdlaSBMaWV3IDx6aGFvd2VpbGlld0BnbWFpbC5jb20+ CkRhdGU6IFNhdCwgMTkgRmViIDIwMjIgMTY6Mjg6MzggKzA4MDAKU3ViamVjdDogW1BBVENIXSB0 cmVlLW9wdGltaXphdGlvbjogW1BSMTAzODU1XSBGb2xkICh0eXBlKVggLyAodHlwZSlZCgpUaGlz IHBhdHRlcm4gY29udmVydHMgKHRydW5jX2RpdiAoY29udmVydCBhKSAoY29udmVydCBiKSkgdG8K KGNvbnZlcnQgKHRydW5jX2RpdiBhIGIpKSB3aGVuOgoKMS4gdHlwZSwgYSwgYW5kIGIgYWxsIGhh dmUgdW5zaWduZWQgaW50ZWdlcmFsIHR5cGVzCjIuIGEgYW5kIGIgaGF2ZSB0aGUgc2FtZSB0eXBl IHByZWNpc2lvbgozLiB0eXBlIGhhcyB0eXBlIHByZWNpc2lvbiBhdCBsZWFzdCBhcyBsYXJnZXIg YXMgYSBhbmQgYgoKVGhpcyBpcyB1c2VmdWwgYXMgd2lkZXIgZGl2aXNpb25zIGFyZSB0eXBpY2Fs bHkgbW9yZSBleHBlbnNpdmUuCgpUbyBpbGx1c3RyYXRlIHRoZSBlZmZlY3RzLCBjb25zaWRlciB0 aGUgZm9sbG93aW5nIGNvZGUgc25pcHBldDoKCnVuc2lnbmVkIGxvbmcgbG9uZyBmKHVuc2lnbmVk IGludCBhLCB1bnNpZ25lZCBpbnQgYikgewoJdW5zaWduZWQgbG9uZyBsb25nIGFsbCA9IGE7Cgly ZXR1cm4gYWxsIC8gYjsKfQoKV2l0aG91dCB0aGUgcGF0dGVybiwgZysrIC1zdGQ9YysrMjAgLU8y IGdlbmVyYXRlcyB0aGUgZm9sbG93aW5nCmFzc2VtYmx5OgoKZih1bnNpZ25lZCBpbnQsIHVuc2ln bmVkIGludCk6Cgltb3YgZWF4LCBlZGkKCW1vdiBlc2ksIGVzaQoJeG9yIGVkeCwgZWR4CglkaXYg cnNpCglyZXQKCldpdGggdGhlIHBhdHRlcm4sIGl0IGdlbmVyYXRlcyB0aGlzOgoKZih1bnNpZ25l ZCBpbnQsIHVuc2lnbmVkIGludCk6Cgltb3YgZWF4LCBlZGkKCXhvciBlZHgsIGVkeAoJZGl2IGVz aQoJcmV0CgpUaGlzIGlzIGlkZW50aWNhbCB0byB3aGF0IGNsYW5nKysgLXN0ZD1jKysyMCAtTzIg Z2VuZXJhdGVzLgoKQm9vdHN0cmFwcGVkIGFuZCByZWdyZXNzaW9uIHRlc3RlZCBvbiB4ODZfNjQt cGMtbGludXgtZ251LgoKU2lnbmVkLW9mZi1ieTogWmhhbyBXZWkgTGlldyA8emhhb3dlaWxpZXdA Z21haWwuY29tPgoKCVBSIHRyZWUtb3B0aW1pemF0aW9uLzEwMzg1NQoKZ2NjL0NoYW5nZUxvZzoK CgkqIG1hdGNoLnBkOiBBZGQgcGF0dGVybiBmb3IgKHR5cGUpWCAvICh0eXBlKVkuCgpnY2MvdGVz dHN1aXRlL0NoYW5nZUxvZzoKCgkqIGdjYy5kZy90cmVlLXNzYS9kaXZpZGUtOC5jOiBOZXcgdGVz dC4KCSogZ2NjLmRnL3RyZWUtc3NhL2RpdmlkZS05LmM6IE5ldyB0ZXN0LgotLS0KIGdjYy9tYXRj aC5wZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAxNSArKysrKysrKysrKysrKysKIGdj Yy90ZXN0c3VpdGUvZ2NjLmRnL3RyZWUtc3NhL2RpdmlkZS04LmMgfCAgOSArKysrKysrKysKIGdj Yy90ZXN0c3VpdGUvZ2NjLmRnL3RyZWUtc3NhL2RpdmlkZS05LmMgfCAgOSArKysrKysrKysKIDMg ZmlsZXMgY2hhbmdlZCwgMzMgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90 ZXN0c3VpdGUvZ2NjLmRnL3RyZWUtc3NhL2RpdmlkZS04LmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBn Y2MvdGVzdHN1aXRlL2djYy5kZy90cmVlLXNzYS9kaXZpZGUtOS5jCgpkaWZmIC0tZ2l0IGEvZ2Nj L21hdGNoLnBkIGIvZ2NjL21hdGNoLnBkCmluZGV4IDEwZjYyMjg0ODYyLi4zOTNiNDM3NTZkZCAx MDA2NDQKLS0tIGEvZ2NjL21hdGNoLnBkCisrKyBiL2djYy9tYXRjaC5wZApAQCAtNjg0LDYgKzY4 NCwyMSBAQCBERUZJTkVfSU5UX0FORF9GTE9BVF9ST1VORF9GTiAoUklOVCkKICAoaWYgKElOVEVH UkFMX1RZUEVfUCAodHlwZSkgfHwgVkVDVE9SX0lOVEVHRVJfVFlQRV9QICh0eXBlKSkKICAgKGNv bnZlcnQgKHRydW5jX21vZCBAMCBAMSkpKSkKIAorLyogKHR5cGUpWCAvICh0eXBlKVkgLT4gKHR5 cGUpKFggLyBZKQorICAgd2hlbiB0aGUgcmVzdWx0aW5nIHR5cGUgaXMgYXQgbGVhc3QgcHJlY2lz ZSBhcyB0aGUgb3JpZ2luYWwgdHlwZXMKKyAgIGFuZCB3aGVuIGFsbCB0aGUgdHlwZXMgYXJlIHVu c2lnbmVkIGludGVncmFsIHR5cGVzLiAqLworKHNpbXBsaWZ5CisgKHRydW5jX2RpdiAoY29udmVy dCBAMCkgKGNvbnZlcnQgQDEpKQorIChpZiAoSU5URUdSQUxfVFlQRV9QICh0eXBlKQorICAgICAg JiYgSU5URUdSQUxfVFlQRV9QIChUUkVFX1RZUEUgKEAwKSkKKyAgICAgICYmIElOVEVHUkFMX1RZ UEVfUCAoVFJFRV9UWVBFIChAMSkpCisgICAgICAmJiBUWVBFX1VOU0lHTkVEICh0eXBlKQorICAg ICAgJiYgVFlQRV9VTlNJR05FRCAoVFJFRV9UWVBFIChAMCkpCisgICAgICAmJiBUWVBFX1VOU0lH TkVEIChUUkVFX1RZUEUgKEAxKSkKKyAgICAgICYmIFRZUEVfUFJFQ0lTSU9OIChUUkVFX1RZUEUg KEAwKSkgPT0gVFlQRV9QUkVDSVNJT04gKFRSRUVfVFlQRSAoQDEpKQorICAgICAgJiYgVFlQRV9Q UkVDSVNJT04gKHR5cGUpID49IFRZUEVfUFJFQ0lTSU9OIChUUkVFX1RZUEUgKEAwKSkpCisgIChj b252ZXJ0ICh0cnVuY19kaXYgQDAgQDEpKSkpCisKIC8qIHggKiAoMSArIHkgLyB4KSAtIHkgLT4g eCAtIHkgJSB4ICovCiAoc2ltcGxpZnkKICAobWludXMgKG11bHQ6Y3MgQDAgKHBsdXM6cyAodHJ1 bmNfZGl2OnMgQDEgQDApIGludGVnZXJfb25lcCkpIEAxKQpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3Rz dWl0ZS9nY2MuZGcvdHJlZS1zc2EvZGl2aWRlLTguYyBiL2djYy90ZXN0c3VpdGUvZ2NjLmRnL3Ry ZWUtc3NhL2RpdmlkZS04LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAu LmRjM2RjOWNhNzY5Ci0tLSAvZGV2L251bGwKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MuZGcvdHJl ZS1zc2EvZGl2aWRlLTguYwpAQCAtMCwwICsxLDkgQEAKKy8qIFBSIHRyZWUtb3B0aW1pemF0aW9u LzEwMzg1NSAqLworLyogeyBkZy1vcHRpb25zICItTyAtZmR1bXAtdHJlZS1vcHRpbWl6ZWQiIH0g Ki8KKwordW5zaWduZWQgaW50IGYodW5zaWduZWQgaW50IGEsIHVuc2lnbmVkIGludCBiKSB7Cisg ICAgdW5zaWduZWQgbG9uZyBsb25nIGFsbCA9IGE7CisgICAgcmV0dXJuIGFsbCAvIGI7Cit9CisK Ky8qIHsgZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC1ub3QgIlxcXChsb25nIGxvbmcgdW5zaWdu ZWQgaW50XFxcKSIgIm9wdGltaXplZCIgfSB9ICovCmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRl L2djYy5kZy90cmVlLXNzYS9kaXZpZGUtOS5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MuZGcvdHJlZS1z c2EvZGl2aWRlLTkuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uNjk4 NmI1NDg0ZTQKLS0tIC9kZXYvbnVsbAorKysgYi9nY2MvdGVzdHN1aXRlL2djYy5kZy90cmVlLXNz YS9kaXZpZGUtOS5jCkBAIC0wLDAgKzEsOSBAQAorLyogUFIgdHJlZS1vcHRpbWl6YXRpb24vMTAz ODU1ICovCisvKiB7IGRnLW9wdGlvbnMgIi1PIC1mZHVtcC10cmVlLW9wdGltaXplZCIgfSAqLwor Cit1bnNpZ25lZCBsb25nIGxvbmcgZih1bnNpZ25lZCBpbnQgYSwgdW5zaWduZWQgaW50IGIpIHsK KyAgICB1bnNpZ25lZCBsb25nIGxvbmcgYWxsID0gYTsKKyAgICByZXR1cm4gYWxsIC8gYjsKK30K KworLyogeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICJcXFwobG9uZyBsb25nIHVu c2lnbmVkIGludFxcXCkiIDEgIm9wdGltaXplZCIgfSB9ICovCi0tIAoyLjM1LjEKCg== --000000000000ccaecf05d8936681--