From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 31939 invoked by alias); 25 Jul 2016 00:44:28 -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 31923 invoked by uid 89); 25 Jul 2016 00:44:27 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.1 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 spammy=UD:pd, matchpd, match.pd, UD:match.pd X-HELO: mail-it0-f44.google.com Received: from mail-it0-f44.google.com (HELO mail-it0-f44.google.com) (209.85.214.44) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-GCM-SHA256 encrypted) ESMTPS; Mon, 25 Jul 2016 00:44:17 +0000 Received: by mail-it0-f44.google.com with SMTP id f6so73875940ith.1 for ; Sun, 24 Jul 2016 17:44:16 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=9O3/j5f5XIoc2ObI4EtZax/krS9BLtidVwHm9LF1M2s=; b=TAe/hKVhQDOv8lcAecJSZIyLwpWFFxqecg0MVsd6Q0PxXAdMyfSln2yjBMQPcXm7Kr vo+821w7VyR+x8lB/jDidodJ8/guqPdciCZ1ZrONK7RW3/58N2gMJstn35QBfKwOVwbX /zjLXqaoUJLAPsOLzOxW+BhTvIc3J74b2PwBDj1OB0mSvKG/xh0l6tqwMYxKasIJkFTH p0eOoYlcrvkCwjMltfJfug1474+POt9sSU+gUjl36qif7c01oo3ISl2QpphaXG1ilcfJ NC/GkRskofCBPXVa53cOXTse8tFjZ2+8UeQbsTzwa4jHvMRRYousB73g4cMVatD1aiak ROCg== X-Gm-Message-State: AEkoouuL6SthxgV4vIL1lucHj+UnRgS27M6nUGqxDFn6swl3mAVg1iQmLqEjDAcaBIQx1jhE4k6rfxPcyLuD0uth X-Received: by 10.36.219.65 with SMTP id c62mr6472678itg.44.1469407454947; Sun, 24 Jul 2016 17:44:14 -0700 (PDT) MIME-Version: 1.0 Received: by 10.36.48.197 with HTTP; Sun, 24 Jul 2016 17:44:14 -0700 (PDT) From: Prathamesh Kulkarni Date: Mon, 25 Jul 2016 00:44:00 -0000 Message-ID: Subject: [PR70920] transform (intptr_t) x eq/ne CST to x eq/ne (typeof x) cst To: Richard Biener , gcc Patches Content-Type: multipart/mixed; boundary=94eb2c05ad306214bd05386b1558 X-IsSubscribed: yes X-SW-Source: 2016-07/txt/msg01564.txt.bz2 --94eb2c05ad306214bd05386b1558 Content-Type: text/plain; charset=UTF-8 Content-length: 1631 Hi Richard, The attached patch tries to fix PR70920. It adds your pattern from comment 1 in the PR (with additional gating on INTEGRAL_TYPE_P to avoid regressing finalize_18.f90) and second pattern, which is reverse of the first transform. I needed to update ssa-dom-branch-1.c because with patch applied, jump threading removed the second if (i != 0B) block. The dumps with and without patch for ssa-dom-branch-1.c start to differ with forwprop1: before: : _1 = temp_16(D)->code; _2 = _1 == 42; _3 = (int) _2; _4 = (long int) _3; temp_17 = (struct rtx_def *) _4; if (temp_17 != 0B) goto ; else goto ; after: : _1 = temp_16(D)->code; _2 = _1 == 42; _3 = (int) _2; _4 = (long int) _2; temp_17 = (struct rtx_def *) _4; if (_1 == 42) goto ; else goto ; I suppose the transform is correct for above test-case ? Then vrp dump shows: Threaded jump 5 --> 9 to 13 Threaded jump 8 --> 9 to 13 Threaded jump 3 --> 9 to 13 Threaded jump 12 --> 9 to 14 Removing basic block 9 basic block 9, loop depth 0 pred: if (i1_10(D) != 0B) goto ; else goto ; succ: 10 11 So there remained two instances of if (i1_10 (D) != 0B) in dom2 dump file, and hence needed to update the test-case. Bootstrapped and tested on x86_64-unknown-linux-gnu. OK to commit ? PS: Writing changelog entries for match.pd is a bit tedious. Should we add optional names for pattern so we can refer to them by names in the ChangeLog for the more complicated ones ? Or maybe just use comments: (simplify /* name */ ... ) -;) Thanks, Prathamesh --94eb2c05ad306214bd05386b1558 Content-Type: text/plain; charset=US-ASCII; name="patch-1.diff" Content-Disposition: attachment; filename="patch-1.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_ir1b6ieh1 Content-length: 5068 ZGlmZiAtLWdpdCBhL2djYy9tYXRjaC5wZCBiL2djYy9tYXRjaC5wZAppbmRl eCAyMWJmNjE3Li43YzczNmJlIDEwMDY0NAotLS0gYS9nY2MvbWF0Y2gucGQK KysrIGIvZ2NjL21hdGNoLnBkCkBAIC0zNDA4LDMgKzM0MDgsMjMgQEAgREVG SU5FX0lOVF9BTkRfRkxPQVRfUk9VTkRfRk4gKFJJTlQpCiAJIHsgQ09OU1RS VUNUT1JfRUxUIChjdG9yLCBpZHggLyBrKS0+dmFsdWU7IH0pCiAJKEJJVF9G SUVMRF9SRUYgeyBDT05TVFJVQ1RPUl9FTFQgKGN0b3IsIGlkeCAvIGspLT52 YWx1ZTsgfQogCQkgICAgICAgQDEgeyBiaXRzaXplX2ludCAoKGlkeCAlIGsp ICogd2lkdGgpOyB9KSkpKSkpKSkpCisKKy8qIFBSNzA5MjA6IFRyYW5zZm9y bSAoaW50cHRyX3QpeCBlcS9uZSBDU1QgdG8geCBlcS9uZSAodHlwZW9mIHgp IENTVC4gICovCisKKyhmb3IgY21wIChuZSBlcSkKKyAoc2ltcGxpZnkKKyAg KGNtcCAoY29udmVydEAyIEAwKSBJTlRFR0VSX0NTVEAxKQorICAoaWYgKFBP SU5URVJfVFlQRV9QIChUUkVFX1RZUEUgKEAwKSkKKyAgICAgICAmJiBJTlRF R1JBTF9UWVBFX1AgKFRSRUVfVFlQRSAoQDIpKSkKKyAgIChjbXAgQDAgKGNv bnZlcnQgQDEpKSkpKQorCisvKiBSZXZlcnNlIG9mIHRoZSBhYm92ZSBjYXNl OgorICAgeCBoYXMgaW50ZWdyYWxfdHlwZSwgQ1NUIGlzIGEgcG9pbnRlciBj b25zdGFudC4KKyAgIFRyYW5zZm9ybSAodHlwZW9mIENTVCl4IGVxL25lIENT VCB0byB4IGVxL25lICh0eXBlb2YgeCkgQ1NULiAgKi8KKworKGZvciBjbXAg KG5lIGVxKQorIChzaW1wbGlmeQorICAoY21wIChjb252ZXJ0IEAwKSBAMSkK KyAgKGlmIChQT0lOVEVSX1RZUEVfUCAoVFJFRV9UWVBFIChAMSkpCisgICAg ICAgJiYgSU5URUdSQUxfVFlQRV9QIChUUkVFX1RZUEUgKEAwKSkpCisgICAg KGNtcCBAMCAoY29udmVydCBAMSkpKSkpCmRpZmYgLS1naXQgYS9nY2MvdGVz dHN1aXRlL2djYy5kZy9wcjcwOTIwLTEuYyBiL2djYy90ZXN0c3VpdGUvZ2Nj LmRnL3ByNzA5MjAtMS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAuLjliN2UyZDAKLS0tIC9kZXYvbnVsbAorKysgYi9nY2MvdGVzdHN1 aXRlL2djYy5kZy9wcjcwOTIwLTEuYwpAQCAtMCwwICsxLDIwIEBACisvKiB7 IGRnLWRvIGNvbXBpbGUgfSAqLworLyogeyBkZy1vcHRpb25zICItZmR1bXAt dHJlZS1naW1wbGUiIH0gKi8KKworI2luY2x1ZGUgPHN0ZGludC5oPgorCit2 b2lkIGYxKCk7Cit2b2lkIGYyKCk7CisKK3ZvaWQKK2ZvbyAoaW50ICphKQor eworICBpZiAoKGludHB0cl90KSBhID09IDApCisgICAgeworICAgICAgZjEg KCk7CisgICAgICBpZiAoYSkKKwlmMiAoKTsgCisgICAgfQorfQorCisvKiB7 IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1bXAgImlmIFxcKGEgPT0gMEJcXCki ICJnaW1wbGUiIH0gfSAqLwpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9n Y2MuZGcvcHI3MDkyMC0yLmMgYi9nY2MvdGVzdHN1aXRlL2djYy5kZy9wcjcw OTIwLTIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4y ZGI5ODk3Ci0tLSAvZGV2L251bGwKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2Mu ZGcvcHI3MDkyMC0yLmMKQEAgLTAsMCArMSwyMSBAQAorLyogeyBkZy1kbyBj b21waWxlIH0gKi8KKy8qIHsgZGctb3B0aW9ucyAiLU8yIC1mZHVtcC10cmVl LWZvcndwcm9wLWRldGFpbHMiIH0gKi8KKworI2luY2x1ZGUgPHN0ZGludC5o PgorCit2b2lkIGYxKCk7Cit2b2lkIGYyKCk7CisKK3ZvaWQKK2ZvbyAoaW50 ICphKQoreworICBpbnQgY3N0ID0gMDsKKyAgaWYgKChpbnRwdHJfdCkgYSA9 PSBjc3QpCisgICAgeworICAgICAgZjEgKCk7CisgICAgICBpZiAoYSkgCisJ ZjIgKCk7IAorICAgIH0KK30KKworLyogeyBkZy1maW5hbCB7IHNjYW4tdHJl ZS1kdW1wICJnaW1wbGVfc2ltcGxpZmllZCB0byBpZiBcXChhX1xbMC05XF0q XFwoRFxcKSA9PSAwQlxcKSIgImZvcndwcm9wMSIgfSB9ICovCmRpZmYgLS1n aXQgYS9nY2MvdGVzdHN1aXRlL2djYy5kZy9wcjcwOTIwLTMuYyBiL2djYy90 ZXN0c3VpdGUvZ2NjLmRnL3ByNzA5MjAtMy5jCm5ldyBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDAwMDAwMDAuLjcxZTBkOGQKLS0tIC9kZXYvbnVsbAorKysg Yi9nY2MvdGVzdHN1aXRlL2djYy5kZy9wcjcwOTIwLTMuYwpAQCAtMCwwICsx LDIwIEBACisvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLworLyogeyBkZy1vcHRp b25zICItV25vLWludC10by1wb2ludGVyLWNhc3QgLWZkdW1wLXRyZWUtZ2lt cGxlIiB9ICovCisKKyNpbmNsdWRlIDxzdGRpbnQuaD4KKwordm9pZCBmMSgp Owordm9pZCBmMigpOworCit2b2lkCitmb28gKGludCBhKQoreworICBpZiAo KGludCAqKSBhID09IDApCisgICAgeworICAgICAgZjEgKCk7CisgICAgICBp ZiAoYSkKKwlmMiAoKTsgCisgICAgfQorfQorCisvKiB7IGRnLWZpbmFsIHsg c2Nhbi10cmVlLWR1bXAgImlmIFxcKGEgPT0gMFxcKSIgImdpbXBsZSIgfSB9 ICovCmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy5kZy9wcjcwOTIw LTQuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLmRnL3ByNzA5MjAtNC5jCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY5MmM1YTYKLS0tIC9k ZXYvbnVsbAorKysgYi9nY2MvdGVzdHN1aXRlL2djYy5kZy9wcjcwOTIwLTQu YwpAQCAtMCwwICsxLDIxIEBACisvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLwor LyogeyBkZy1vcHRpb25zICItTzIgLWZkdW1wLXRyZWUtZm9yd3Byb3AtZGV0 YWlscyAtV25vLWludC10by1wb2ludGVyLWNhc3QiIH0gKi8KKworI2luY2x1 ZGUgPHN0ZGludC5oPgorCit2b2lkIGYxKCk7Cit2b2lkIGYyKCk7CisKK3Zv aWQKK2ZvbyAoaW50IGEpCit7CisgIHZvaWQgKmNzdCA9IDA7IAorICBpZiAo KGludCAqKSBhID09IGNzdCkKKyAgICB7CisgICAgICBmMSAoKTsKKyAgICAg IGlmIChhKSAKKwlmMiAoKTsgCisgICAgfQorfQorCisvKiB7IGRnLWZpbmFs IHsgc2Nhbi10cmVlLWR1bXAgImdpbXBsZV9zaW1wbGlmaWVkIHRvIGlmIFxc KGFfXFswLTlcXSpcXChEXFwpID09IDBcXCkiICJmb3J3cHJvcDEiIH0gfSAq LwpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MuZGcvdHJlZS1zc2Ev c3NhLWRvbS1icmFuY2gtMS5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MuZGcvdHJl ZS1zc2Evc3NhLWRvbS1icmFuY2gtMS5jCmluZGV4IDE4ZjkwNDEuLmQzOGUz YTggMTAwNjQ0Ci0tLSBhL2djYy90ZXN0c3VpdGUvZ2NjLmRnL3RyZWUtc3Nh L3NzYS1kb20tYnJhbmNoLTEuYworKysgYi9nY2MvdGVzdHN1aXRlL2djYy5k Zy90cmVlLXNzYS9zc2EtZG9tLWJyYW5jaC0xLmMKQEAgLTIxLDcgKzIxLDcg QEAgdHJ5X2NvbWJpbmUgKHJ0eCBpMSwgcnR4IG5ld3BhdCkKIAogLyogVGhl cmUgc2hvdWxkIGJlIHRocmVlIHRlc3RzIGFnYWluc3QgaTEuICBUd28gZnJv bSB0aGUgaGFzaCB0YWJsZQogICAgZHVtcHMsIG9uZSBpbiB0aGUgY29kZSBp dHNlbGYuICAqLwotLyogeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRp bWVzICJpZiAuaTFfIiAzICJkb20yIn0gfSAqLworLyogeyBkZy1maW5hbCB7 IHNjYW4tdHJlZS1kdW1wLXRpbWVzICJpZiAuaTFfIiAyICJkb20yIn0gfSAq LwogCiAvKiBUaGVyZSBzaG91bGQgYmUgbm8gYWN0dWFsIGp1bXAgdGhyZWFk cyByZWFsaXplZCBieSBET00uICBUaGUKICAgIGxlZ2l0aW1pemUganVtcCB0 aHJlYWRzIGFyZSBoYW5kbGVkIGluIFZSUCBhbmQgdGhvc2UgZGlzY292ZXJl ZAo= --94eb2c05ad306214bd05386b1558 Content-Type: application/octet-stream; name=ChangeLog Content-Disposition: attachment; filename=ChangeLog Content-Transfer-Encoding: base64 X-Attachment-Id: f_ir1b6iav0 Content-length: 680 MjAxNi0wNy0yNSAgUmljaGFyZCBCaWVuZXIgIDxyZ3VlbnRoZXJAc3VzZS5k ZT4KCSAgICBQcmF0aGFtZXNoIEt1bGthcm5pIDxwcmF0aGFtZXNoLmt1bGth cm5pQGxpbmFyby5vcmc+CgoJKiBtYXRjaC5wZCAoKGludHB0cil4IGVxL25l IENTVCB0byB4IGVxL25lICh0eXBlb2YgeCkgQ1NUKTogTmV3CglwYXR0ZXJu LgoJKCh0eXBlb2YgcHRyX2NzdCkgeCBlcS9uZSBwdHJfY3N0IHRvIHggZXEv bmUgKHR5cGVvZiB4KSBwdHJfY3N0KTogTmV3CglwYXR0ZXJuLgoKdGVzdHN1 aXRlLwoJKiBnY2MuZGcvcHI3MDkyMC0xLmM6IE5ldyB0ZXN0LWNhc2UuCgkq IGdjYy5kZy9wcjcwOTAyLTIuYzogTGlrZXdpc2UuCgkqIGdjYy5kZy9wcjcw OTIwLTMuYzogTGlrZXdpc2UuCgkqIGdjYy5kZy9wcjcwOTIwLTQuYzogTGlr ZXdpc2UKCSogZ2NjLmRnL3RyZWUtc3NhL3NzYS1kb20tYnJhbmNoLTEuYzog Q2hhbmdlIHNjYW4tdHJlZS1kdW1wLXRpbWVzIHRvCgkyIGluc3RlYWQgb2Yg My4gCg== --94eb2c05ad306214bd05386b1558--