From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 119267 invoked by alias); 21 May 2017 19:23:02 -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 119253 invoked by uid 89); 21 May 2017 19:23:01 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-9.4 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_2,GIT_PATCH_3,KAM_ASCII_DIVIDERS,KAM_LAZY_DOMAIN_SECURITY,RP_MATCHES_RCVD autolearn=ham version=3.3.2 spammy=H*c:HHHH X-HELO: mail3-relais-sop.national.inria.fr Received: from mail3-relais-sop.national.inria.fr (HELO mail3-relais-sop.national.inria.fr) (192.134.164.104) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sun, 21 May 2017 19:22:59 +0000 Received: from 187.57.140.77.rev.sfr.net (HELO stedding) ([77.140.57.187]) by mail3-relais-sop.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-SHA; 21 May 2017 21:23:00 +0200 Date: Sun, 21 May 2017 19:45:00 -0000 From: Marc Glisse To: gcc-patches@gcc.gnu.org Subject: Allow some NOP conversions in (X+CST1)+CST2 in match.pd Message-ID: User-Agent: Alpine 2.02 (DEB 1266 2009-07-14) MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="8323329-8847909-1495394580=:1178" X-SW-Source: 2017-05/txt/msg01641.txt.bz2 This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --8323329-8847909-1495394580=:1178 Content-Type: TEXT/PLAIN; format=flowed; charset=US-ASCII Content-length: 602 Hello, generalizing a bit one transformation, to avoid a regression with another patch I am working on. Handling conversions always gets messy :-( It would have been easier to stick to scalars and wide_int, but since the existing transformation handles vectors, I didn't want to regress. Bootstrap+testsuite on powerpc64le-unknown-linux-gnu. 2017-05-22 Marc Glisse gcc/ * match.pd ((A +- CST1) +- CST2): Allow some conversions. * tree.c (drop_tree_overflow): Handle COMPLEX_CST and VECTOR_CST. gcc/testsuite/ * gcc.dg/tree-ssa/addadd.c: New file. -- Marc Glisse --8323329-8847909-1495394580=:1178 Content-Type: TEXT/x-diff; name=conv.patch Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: inline; filename=conv.patch Content-length: 7133 SW5kZXg6IG1hdGNoLnBkDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotLS0g bWF0Y2gucGQJKHJldmlzaW9uIDI0ODMxMikNCisrKyBtYXRjaC5wZAkod29y a2luZyBjb3B5KQ0KQEAgLTEyNjUsMjkgKzEyNjUsNTMgQEAgREVGSU5FX0lO VF9BTkRfRkxPQVRfUk9VTkRfRk4gKFJJTlQpDQogICAoc2ltcGxpZnkNCiAg ICAobWludXMgQDAgKHBsdXM6YyBAMCBAMSkpDQogICAgKG5lZ2F0ZSBAMSkp DQogICAoc2ltcGxpZnkNCiAgICAobWludXMgQDAgKG1pbnVzIEAwIEAxKSkN CiAgICBAMSkNCiANCiAgIC8qIChBICstIENTVDEpICstIENTVDIgLT4gQSAr IENTVDMgICovDQogICAoZm9yIG91dGVyX29wIChwbHVzIG1pbnVzKQ0KICAg IChmb3IgaW5uZXJfb3AgKHBsdXMgbWludXMpDQorCW5lZ19pbm5lcl9vcCAo bWludXMgcGx1cykNCiAgICAgKHNpbXBsaWZ5DQotICAgICAob3V0ZXJfb3Ag KGlubmVyX29wIEAwIENPTlNUQU5UX0NMQVNTX1BAMSkgQ09OU1RBTlRfQ0xB U1NfUEAyKQ0KLSAgICAgLyogSWYgdGhlIGNvbnN0YW50IG9wZXJhdGlvbiBv dmVyZmxvd3Mgd2UgY2Fubm90IGRvIHRoZSB0cmFuc2Zvcm0NCi0JYXMgd2Ug d291bGQgaW50cm9kdWNlIHVuZGVmaW5lZCBvdmVyZmxvdywgZm9yIGV4YW1w bGUNCi0Jd2l0aCAoYSAtIDEpICsgSU5UX01JTi4gICovDQotICAgICAod2l0 aCB7IHRyZWUgY3N0ID0gY29uc3RfYmlub3AgKG91dGVyX29wID09IGlubmVy X29wDQotCQkJCSAgICAgPyBQTFVTX0VYUFIgOiBNSU5VU19FWFBSLCB0eXBl LCBAMSwgQDIpOyB9DQotICAgICAgKGlmIChjc3QgJiYgIVRSRUVfT1ZFUkZM T1cgKGNzdCkpDQotICAgICAgIChpbm5lcl9vcCBAMCB7IGNzdDsgfSApKSkp KSkNCisgICAgIChvdXRlcl9vcCAoY29udmVydD8gKGlubmVyX29wIEAwIENP TlNUQU5UX0NMQVNTX1BAMSkpIENPTlNUQU5UX0NMQVNTX1BAMikNCisgICAg IChpZiAodHJlZV9ub3BfY29udmVyc2lvbl9wICh0eXBlLCBUUkVFX1RZUEUg KEAwKSkpDQorICAgICAgLyogSWYgb25lIG9mIHRoZSB0eXBlcyB3cmFwcywg dXNlIHRoYXQgb25lLiAgKi8NCisgICAgICAoaWYgKCFBTllfSU5URUdSQUxf VFlQRV9QICh0eXBlKSB8fCBUWVBFX09WRVJGTE9XX1dSQVBTICh0eXBlKSkN CisgICAgICAgKGlmIChvdXRlcl9vcCA9PSBQTFVTX0VYUFIpDQorCShwbHVz IChjb252ZXJ0IEAwKSAoaW5uZXJfb3AgQDIgKGNvbnZlcnQgQDEpKSkNCisJ KG1pbnVzIChjb252ZXJ0IEAwKSAobmVnX2lubmVyX29wIEAyIChjb252ZXJ0 IEAxKSkpKQ0KKyAgICAgICAoaWYgKCFBTllfSU5URUdSQUxfVFlQRV9QIChU UkVFX1RZUEUgKEAwKSkNCisJICAgIHx8IFRZUEVfT1ZFUkZMT1dfV1JBUFMg KFRSRUVfVFlQRSAoQDApKSkNCisJKGlmIChvdXRlcl9vcCA9PSBQTFVTX0VY UFIpDQorCSAoY29udmVydCAocGx1cyBAMCAoaW5uZXJfb3AgKGNvbnZlcnQg QDIpIEAxKSkpDQorCSAoY29udmVydCAobWludXMgQDAgKG5lZ19pbm5lcl9v cCAoY29udmVydCBAMikgQDEpKSkpDQorCS8qIElmIHRoZSBjb25zdGFudCBv cGVyYXRpb24gb3ZlcmZsb3dzIHdlIGNhbm5vdCBkbyB0aGUgdHJhbnNmb3Jt DQorCSAgIGRpcmVjdGx5IGFzIHdlIHdvdWxkIGludHJvZHVjZSB1bmRlZmlu ZWQgb3ZlcmZsb3csIGZvciBleGFtcGxlDQorCSAgIHdpdGggKGEgLSAxKSAr IElOVF9NSU4uICAqLw0KKwkoaWYgKHR5cGVzX21hdGNoICh0eXBlLCBAMCkp DQorCSAod2l0aCB7IHRyZWUgY3N0ID0gY29uc3RfYmlub3AgKG91dGVyX29w ID09IGlubmVyX29wDQorCQkJCQkgPyBQTFVTX0VYUFIgOiBNSU5VU19FWFBS LA0KKwkJCQkJIHR5cGUsIEAxLCBAMik7IH0NCisJICAoaWYgKGNzdCAmJiAh VFJFRV9PVkVSRkxPVyAoY3N0KSkNCisJICAgKGlubmVyX29wIEAwIHsgY3N0 OyB9ICkNCisJICAgLyogWCtJTlRfTUFYKzEgaXMgWC1JTlRfTUlOLiAgKi8N CisJICAgKGlmIChJTlRFR1JBTF9UWVBFX1AgKHR5cGUpICYmIGNzdA0KKwkJ JiYgd2k6OmVxX3AgKGNzdCwgd2k6Om1pbl92YWx1ZSAodHlwZSkpKQ0KKwkg ICAgKG5lZ19pbm5lcl9vcCBAMCB7IHdpZGVfaW50X3RvX3RyZWUgKHR5cGUs IGNzdCk7IH0pDQorCSAgICAvKiBMYXN0IHJlc29ydCwgdXNlIHNvbWUgdW5z aWduZWQgdHlwZS4gICovDQorCSAgICAod2l0aCB7IHRyZWUgdXR5cGUgPSB1 bnNpZ25lZF90eXBlX2ZvciAodHlwZSk7IH0NCisJICAgICAoY29udmVydCAo aW5uZXJfb3ANCisJCSAgICAgICAoY29udmVydDp1dHlwZSBAMCkNCisJCSAg ICAgICAoY29udmVydDp1dHlwZQ0KKwkJCXsgZHJvcF90cmVlX292ZXJmbG93 IChjc3QpOyB9KSkpKSkpKSkpKSkpKSkNCiANCiAgIC8qIChDU1QxIC0gQSkg Ky0gQ1NUMiAtPiBDU1QzIC0gQSAgKi8NCiAgIChmb3Igb3V0ZXJfb3AgKHBs dXMgbWludXMpDQogICAgKHNpbXBsaWZ5DQogICAgIChvdXRlcl9vcCAobWlu dXMgQ09OU1RBTlRfQ0xBU1NfUEAxIEAwKSBDT05TVEFOVF9DTEFTU19QQDIp DQogICAgICh3aXRoIHsgdHJlZSBjc3QgPSBjb25zdF9iaW5vcCAob3V0ZXJf b3AsIHR5cGUsIEAxLCBAMik7IH0NCiAgICAgIChpZiAoY3N0ICYmICFUUkVF X09WRVJGTE9XIChjc3QpKQ0KICAgICAgIChtaW51cyB7IGNzdDsgfSBAMCkp KSkpDQogDQogICAvKiBDU1QxIC0gKENTVDIgLSBBKSAtPiBDU1QzICsgQSAg Ki8NCkluZGV4OiB0ZXN0c3VpdGUvZ2NjLmRnL3RyZWUtc3NhL2FkZGFkZC5j DQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09DQotLS0gdGVzdHN1aXRlL2djYy5k Zy90cmVlLXNzYS9hZGRhZGQuYwkobm9uZXhpc3RlbnQpDQorKysgdGVzdHN1 aXRlL2djYy5kZy90cmVlLXNzYS9hZGRhZGQuYwkod29ya2luZyBjb3B5KQ0K QEAgLTAsMCArMSwzNCBAQA0KKy8qIHsgZGctZG8gY29tcGlsZSB9ICovDQor LyogeyBkZy1vcHRpb25zICItTyAtZmR1bXAtdHJlZS1vcHRpbWl6ZWQiIH0g Ki8NCisNCitpbnQgZih1bnNpZ25lZCB4KXsNCisgIHggKz0gMTIzOw0KKyAg aW50IHkgPSB4Ow0KKyAgeSAtPSA5OTsNCisgIHJldHVybiB5Ow0KK30NCit1 bnNpZ25lZCBnKGludCB4KXsNCisgIHggKz0gMTIzOw0KKyAgdW5zaWduZWQg eSA9IHg7DQorICB5IC09IDk5Ow0KKyAgcmV0dXJuIHk7DQorfQ0KK2ludCBo KGludCB4KXsNCisgIHggKz0gX19JTlRfTUFYX187DQorICB4ICs9IDE7DQor ICByZXR1cm4geDsNCit9DQoraW50IGkoaW50IHgpew0KKyAgeCArPSBfX0lO VF9NQVhfXzsNCisgIHggKz0gX19JTlRfTUFYX187DQorICByZXR1cm4geDsN Cit9DQordHlwZWRlZiBpbnQgUyBfX2F0dHJpYnV0ZV9fKCh2ZWN0b3Jfc2l6 ZSgxNikpKTsNCit2b2lkIGooUyp4KXsNCisgICp4ICs9IF9fSU5UX01BWF9f Ow0KKyAgKnggKz0gX19JTlRfTUFYX187DQorfQ0KKw0KKy8qIHsgZGctZmlu YWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiIFxcKyAyNDsiIDIgIm9wdGlt aXplZCIgfSB9ICovDQorLyogeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1w LXRpbWVzICJcXCh1bnNpZ25lZCBpbnRcXCkiIDIgIm9wdGltaXplZCIgfSB9 ICovDQorLyogeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLW5vdCAiMjE0 NzQ4MzY0NyIgIm9wdGltaXplZCIgfSB9ICovDQpJbmRleDogdHJlZS5jDQo9 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09DQotLS0gdHJlZS5jCShyZXZpc2lvbiAy NDgzMTIpDQorKysgdHJlZS5jCSh3b3JraW5nIGNvcHkpDQpAQCAtMTMxMzEs MjAgKzEzMTMxLDM5IEBAIGRyb3BfdHJlZV9vdmVyZmxvdyAodHJlZSB0KQ0K ICAgZ2NjX2NoZWNraW5nX2Fzc2VydCAoVFJFRV9PVkVSRkxPVyAodCkpOw0K IA0KICAgLyogRm9yIHRyZWUgY29kZXMgd2l0aCBhIHNoYXJpbmcgbWFjaGlu ZXJ5IHJlLWJ1aWxkIHRoZSByZXN1bHQuICAqLw0KICAgaWYgKFRSRUVfQ09E RSAodCkgPT0gSU5URUdFUl9DU1QpDQogICAgIHJldHVybiB3aWRlX2ludF90 b190cmVlIChUUkVFX1RZUEUgKHQpLCB0KTsNCiANCiAgIC8qIE90aGVyd2lz ZSwgYXMgYWxsIHRjY19jb25zdGFudHMgYXJlIHBvc3NpYmx5IHNoYXJlZCwg Y29weSB0aGUgbm9kZQ0KICAgICAgYW5kIGRyb3AgdGhlIGZsYWcuICAqLw0K ICAgdCA9IGNvcHlfbm9kZSAodCk7DQogICBUUkVFX09WRVJGTE9XICh0KSA9 IDA7DQorDQorICAvKiBGb3IgY29uc3RhbnRzIHRoYXQgY29udGFpbiBuZXN0 ZWQgY29uc3RhbnRzLCBkcm9wIHRoZSBmbGFnDQorICAgICBmcm9tIHRob3Nl IGFzIHdlbGwuICAqLw0KKyAgaWYgKFRSRUVfQ09ERSAodCkgPT0gQ09NUExF WF9DU1QpDQorICAgIHsNCisgICAgICBpZiAoVFJFRV9PVkVSRkxPVyAoVFJF RV9SRUFMUEFSVCAodCkpKQ0KKwlUUkVFX1JFQUxQQVJUICh0KSA9IGRyb3Bf dHJlZV9vdmVyZmxvdyAoVFJFRV9SRUFMUEFSVCAodCkpOw0KKyAgICAgIGlm IChUUkVFX09WRVJGTE9XIChUUkVFX0lNQUdQQVJUICh0KSkpDQorCVRSRUVf SU1BR1BBUlQgKHQpID0gZHJvcF90cmVlX292ZXJmbG93IChUUkVFX0lNQUdQ QVJUICh0KSk7DQorICAgIH0NCisgIGlmIChUUkVFX0NPREUgKHQpID09IFZF Q1RPUl9DU1QpDQorICAgIHsNCisgICAgICBmb3IgKHVuc2lnbmVkIGkgPSAw OyBpIDwgVkVDVE9SX0NTVF9ORUxUUyAodCk7ICsraSkNCisJew0KKwkgIHRy ZWUmIGVsdCA9IFZFQ1RPUl9DU1RfRUxUICh0LCBpKTsNCisJICBpZiAoVFJF RV9PVkVSRkxPVyAoZWx0KSkNCisJICAgIGVsdCA9IGRyb3BfdHJlZV9vdmVy ZmxvdyAoZWx0KTsNCisJfQ0KKyAgICB9DQogICByZXR1cm4gdDsNCiB9DQog DQogLyogR2l2ZW4gYSBtZW1vcnkgcmVmZXJlbmNlIGV4cHJlc3Npb24gVCwg cmV0dXJuIGl0cyBiYXNlIGFkZHJlc3MuDQogICAgVGhlIGJhc2UgYWRkcmVz cyBvZiBhIG1lbW9yeSByZWZlcmVuY2UgZXhwcmVzc2lvbiBpcyB0aGUgbWFp bg0KICAgIG9iamVjdCBiZWluZyByZWZlcmVuY2VkLiAgRm9yIGluc3RhbmNl LCB0aGUgYmFzZSBhZGRyZXNzIGZvcg0KICAgICdhcnJheVtpXS5mbGRbal0n IGlzICdhcnJheScuICBZb3UgY2FuIHRoaW5rIG9mIHRoaXMgYXMgc3RyaXBw aW5nDQogICAgYXdheSB0aGUgb2Zmc2V0IHBhcnQgZnJvbSBhIG1lbW9yeSBh ZGRyZXNzLg0KIA0KICAgIFRoaXMgZnVuY3Rpb24gY2FsbHMgaGFuZGxlZF9j b21wb25lbnRfcCB0byBzdHJpcCBhd2F5IGFsbCB0aGUgaW5uZXINCg== --8323329-8847909-1495394580=:1178--