From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 40316 invoked by alias); 12 Jun 2017 17:02:57 -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 40163 invoked by uid 89); 12 Jun 2017 17:02:55 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-26.9 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2 spammy= X-HELO: EUR03-AM5-obe.outbound.protection.outlook.com Received: from mail-eopbgr30047.outbound.protection.outlook.com (HELO EUR03-AM5-obe.outbound.protection.outlook.com) (40.107.3.47) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 12 Jun 2017 17:02:53 +0000 Received: from VI1PR0802MB2176.eurprd08.prod.outlook.com (10.172.12.21) by VI1PR0802MB2175.eurprd08.prod.outlook.com (10.172.12.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1157.12; Mon, 12 Jun 2017 17:02:54 +0000 Received: from VI1PR0802MB2176.eurprd08.prod.outlook.com ([fe80::2dae:8af1:7884:bb6d]) by VI1PR0802MB2176.eurprd08.prod.outlook.com ([fe80::2dae:8af1:7884:bb6d%18]) with mapi id 15.01.1157.017; Mon, 12 Jun 2017 17:02:54 +0000 From: Bin Cheng To: "gcc-patches@gcc.gnu.org" CC: nd Subject: [PATCH GCC][06/13]Preserve loop nest in whole distribution life time Date: Mon, 12 Jun 2017 17:03:00 -0000 Message-ID: authentication-results: arm.com; dkim=none (message not signed) header.d=none;arm.com; dmarc=none action=none header.from=arm.com; x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1;VI1PR0802MB2175;7:0iPS7s36zqfNPF4LV5LlIDmT4HLGZhE88L83tUdM9yDGQJLFbibia8akRslq0QGk6+09E1KXRlLmQDWHmSvJQ8tciIx/gnFqRFQOk1/Sn1gFpE66TkJ1vLBARVLOla4GUAjdkN6RqOx4s+J41qA+FNqQ6IkMPYOfmFzP3eRqbCo2KQUJTXxoWXibtpVI9gHKqVYd6dDrQx8FLYc5k//DoytsTjk24d0zmga59sL6byB8847h3jc1W7Ls1DsHVWhKajUwW/OOZQ4lYJUFehGD7k/NRKk7W7dJwquxH/c0ORebXog09L250k66z5yN+jnsHheLWLc5A8RGk9RKp+6arw== x-ms-traffictypediagnostic: VI1PR0802MB2175: x-ms-office365-filtering-correlation-id: ea7fd4bf-f418-42ae-c46a-08d4b1b4ddf9 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(2017030254075)(48565401081)(201703131423075)(201703031133081);SRVR:VI1PR0802MB2175; nodisclaimer: True x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(180628864354917); x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(102415395)(6040450)(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001)(100000703101)(100105400095)(93006095)(93001095)(6055026)(6041248)(20161123560025)(20161123564025)(20161123562025)(20161123555025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(6072148)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:VI1PR0802MB2175;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:VI1PR0802MB2175; x-forefront-prvs: 03361FCC43 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(6009001)(39450400003)(39400400002)(39410400002)(39860400002)(39850400002)(39840400002)(377424004)(38730400002)(55016002)(50986999)(110136004)(99286003)(72206003)(14454004)(33656002)(53936002)(8936002)(478600001)(9686003)(5660300001)(86362001)(8676002)(3280700002)(2906002)(6506006)(99936001)(2351001)(189998001)(2501003)(7696004)(6436002)(25786009)(2900100001)(54356999)(74316002)(81166006)(3660700001)(4326008)(7736002)(5640700003)(5250100002)(305945005)(6916009)(66066001)(102836003)(3846002);DIR:OUT;SFP:1101;SCL:1;SRVR:VI1PR0802MB2175;H:VI1PR0802MB2176.eurprd08.prod.outlook.com;FPR:;SPF:None;MLV:sfv;LANG:en; spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: multipart/mixed; boundary="_002_VI1PR0802MB21768DDC39759A94BC4F2A54E7CD0VI1PR0802MB2176_" MIME-Version: 1.0 X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Jun 2017 17:02:54.0293 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0802MB2175 X-IsSubscribed: yes X-SW-Source: 2017-06/txt/msg00830.txt.bz2 --_002_VI1PR0802MB21768DDC39759A94BC4F2A54E7CD0VI1PR0802MB2176_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-length: 566 Hi, This simple patch computes and preserves loop nest vector for whole distrib= ution life time. The loop nest will be used multiple times in on-demand data dep= endence computation. Bootstrap and test on x86_64 and AArch64. Is it OK? Thanks, bin 2017-06-07 Bin Cheng * tree-loop-distribution.c (loop_nest): New global var. (build_rdg): Use loop directly, rather than loop nest. (pg_add_dependence_edges): Remove loop nest parameter. Use global variable directly. (distribute_loop): Compute global variable loop nest. Update use.= --_002_VI1PR0802MB21768DDC39759A94BC4F2A54E7CD0VI1PR0802MB2176_ Content-Type: text/plain; name="0006-loop-nest-20170607.txt" Content-Description: 0006-loop-nest-20170607.txt Content-Disposition: attachment; filename="0006-loop-nest-20170607.txt"; size=4746; creation-date="Mon, 12 Jun 2017 16:47:15 GMT"; modification-date="Mon, 12 Jun 2017 16:47:15 GMT" Content-Transfer-Encoding: base64 Content-length: 6434 RnJvbSBlYTNjMTk4MTM4MDM2Njc2MzM0MDYzMjI2YjZjMTUzNWU0NWRkNGIy IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBCaW4gQ2hlbmcgPGJp bmNoZTAxQGUxMDg0NTEtbGluLmNhbWJyaWRnZS5hcm0uY29tPgpEYXRlOiBG cmksIDkgSnVuIDIwMTcgMTE6NTY6MjggKzAxMDAKU3ViamVjdDogW1BBVENI IDA2LzE0XSBsb29wLW5lc3QtMjAxNzA2MDcudHh0CgotLS0KIGdjYy90cmVl LWxvb3AtZGlzdHJpYnV0aW9uLmMgfCA0NSArKysrKysrKysrKysrKysrKysr KysrKysrKystLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDI4 IGluc2VydGlvbnMoKyksIDE3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L2djYy90cmVlLWxvb3AtZGlzdHJpYnV0aW9uLmMgYi9nY2MvdHJlZS1sb29w LWRpc3RyaWJ1dGlvbi5jCmluZGV4IGNlNmRiNjYuLmUxZjViY2UgMTAwNjQ0 Ci0tLSBhL2djYy90cmVlLWxvb3AtZGlzdHJpYnV0aW9uLmMKKysrIGIvZ2Nj L3RyZWUtbG9vcC1kaXN0cmlidXRpb24uYwpAQCAtNjYsNiArNjYsOSBAQCBh bG9uZyB3aXRoIEdDQzsgc2VlIHRoZSBmaWxlIENPUFlJTkczLiAgSWYgbm90 IHNlZQogI2luY2x1ZGUgInRyZWUtdmVjdG9yaXplci5oIgogCiAKKy8qIFRo ZSBsb29wIChuZXN0KSB0byBiZSBkaXN0cmlidXRlZC4gICovCitzdGF0aWMg dmVjPGxvb3BfcD4gKmxvb3BfbmVzdDsKKwogLyogQSBSZWR1Y2VkIERlcGVu ZGVuY2UgR3JhcGggKFJERykgdmVydGV4IHJlcHJlc2VudGluZyBhIHN0YXRl bWVudC4gICovCiBzdHJ1Y3QgcmRnX3ZlcnRleAogewpAQCAtNDU0LDIyICs0 NTcsMjIgQEAgZnJlZV9yZGcgKHN0cnVjdCBncmFwaCAqcmRnKQogICBmcmVl X2dyYXBoIChyZGcpOwogfQogCi0vKiBCdWlsZCB0aGUgUmVkdWNlZCBEZXBl bmRlbmNlIEdyYXBoIChSREcpIHdpdGggb25lIHZlcnRleCBwZXIKLSAgIHN0 YXRlbWVudCBvZiB0aGUgbG9vcCBuZXN0IExPT1BfTkVTVCwgYW5kIG9uZSBl ZGdlIHBlciBkYXRhIGRlcGVuZGVuY2Ugb3IKLSAgIHNjYWxhciBkZXBlbmRl bmNlLiAgKi8KKy8qIEJ1aWxkIHRoZSBSZWR1Y2VkIERlcGVuZGVuY2UgR3Jh cGggKFJERykgd2l0aCBvbmUgdmVydGV4IHBlciBzdGF0ZW1lbnQgb2YKKyAg IExPT1AsIGFuZCBvbmUgZWRnZSBwZXIgZmxvdyBkZXBlbmRlbmNlIG9yIGNv bnRyb2wgZGVwZW5kZW5jZSBmcm9tIGNvbnRyb2wKKyAgIGRlcGVuZGVuY2Ug Q0QuICAqLwogCiBzdGF0aWMgc3RydWN0IGdyYXBoICoKLWJ1aWxkX3JkZyAo dmVjPGxvb3BfcD4gbG9vcF9uZXN0LCBjb250cm9sX2RlcGVuZGVuY2VzICpj ZCkKK2J1aWxkX3JkZyAoc3RydWN0IGxvb3AgKmxvb3AsIGNvbnRyb2xfZGVw ZW5kZW5jZXMgKmNkKQogewogICBzdHJ1Y3QgZ3JhcGggKnJkZzsKICAgdmVj PGRhdGFfcmVmZXJlbmNlX3A+IGRhdGFyZWZzOwogCiAgIC8qIENyZWF0ZSB0 aGUgUkRHIHZlcnRpY2VzIGZyb20gdGhlIHN0bXRzIG9mIHRoZSBsb29wIG5l c3QuICAqLwogICBhdXRvX3ZlYzxnaW1wbGUgKiwgMTA+IHN0bXRzOwotICBz dG10c19mcm9tX2xvb3AgKGxvb3BfbmVzdFswXSwgJnN0bXRzKTsKKyAgc3Rt dHNfZnJvbV9sb29wIChsb29wLCAmc3RtdHMpOwogICByZGcgPSBuZXdfZ3Jh cGggKHN0bXRzLmxlbmd0aCAoKSk7CiAgIGRhdGFyZWZzLmNyZWF0ZSAoMTAp OwotICBpZiAoIWNyZWF0ZV9yZGdfdmVydGljZXMgKHJkZywgc3RtdHMsIGxv b3BfbmVzdFswXSwgJmRhdGFyZWZzKSkKKyAgaWYgKCFjcmVhdGVfcmRnX3Zl cnRpY2VzIChyZGcsIHN0bXRzLCBsb29wLCAmZGF0YXJlZnMpKQogICAgIHsK ICAgICAgIGRhdGFyZWZzLnJlbGVhc2UgKCk7CiAgICAgICBmcmVlX3JkZyAo cmRnKTsKQEAgLTQ3OSw3ICs0ODIsNyBAQCBidWlsZF9yZGcgKHZlYzxsb29w X3A+IGxvb3BfbmVzdCwgY29udHJvbF9kZXBlbmRlbmNlcyAqY2QpCiAKICAg Y3JlYXRlX3JkZ19mbG93X2VkZ2VzIChyZGcpOwogICBpZiAoY2QpCi0gICAg Y3JlYXRlX3JkZ19jZF9lZGdlcyAocmRnLCBjZCwgbG9vcF9uZXN0WzBdKTsK KyAgICBjcmVhdGVfcmRnX2NkX2VkZ2VzIChyZGcsIGNkLCBsb29wKTsKIAog ICBkYXRhcmVmcy5yZWxlYXNlICgpOwogCkBAIC0xNDIxLDcgKzE0MjQsNyBA QCBwYXJ0aXRpb25fY29udGFpbnNfYWxsX3J3IChzdHJ1Y3QgZ3JhcGggKnJk ZywKICAgIGFuZCBEUlMyIGFuZCBtb2RpZnkgYW5kIHJldHVybiBESVIgYWNj b3JkaW5nIHRvIHRoYXQuICAqLwogCiBzdGF0aWMgaW50Ci1wZ19hZGRfZGVw ZW5kZW5jZV9lZGdlcyAoc3RydWN0IGdyYXBoICpyZGcsIHZlYzxsb29wX3A+ IGxvb3BzLCBpbnQgZGlyLAorcGdfYWRkX2RlcGVuZGVuY2VfZWRnZXMgKHN0 cnVjdCBncmFwaCAqcmRnLCBpbnQgZGlyLAogCQkJIHZlYzxkYXRhX3JlZmVy ZW5jZV9wPiBkcnMxLAogCQkJIHZlYzxkYXRhX3JlZmVyZW5jZV9wPiBkcnMy KQogewpAQCAtMTQ0Miw4ICsxNDQ1LDggQEAgcGdfYWRkX2RlcGVuZGVuY2Vf ZWRnZXMgKHN0cnVjdCBncmFwaCAqcmRnLCB2ZWM8bG9vcF9wPiBsb29wcywg aW50IGRpciwKIAkgICAgc3RkOjpzd2FwIChkcjEsIGRyMik7CiAJICAgIHRo aXNfZGlyID0gLXRoaXNfZGlyOwogCSAgfQotCWRkciA9IGluaXRpYWxpemVf ZGF0YV9kZXBlbmRlbmNlX3JlbGF0aW9uIChkcjEsIGRyMiwgbG9vcHMpOwot CWNvbXB1dGVfYWZmaW5lX2RlcGVuZGVuY2UgKGRkciwgbG9vcHNbMF0pOwor CWRkciA9IGluaXRpYWxpemVfZGF0YV9kZXBlbmRlbmNlX3JlbGF0aW9uIChk cjEsIGRyMiwgKmxvb3BfbmVzdCk7CisJY29tcHV0ZV9hZmZpbmVfZGVwZW5k ZW5jZSAoZGRyLCAoKmxvb3BfbmVzdClbMF0pOwogCWlmIChERFJfQVJFX0RF UEVOREVOVCAoZGRyKSA9PSBjaHJlY19kb250X2tub3cpCiAJICB0aGlzX2Rp ciA9IDI7CiAJZWxzZSBpZiAoRERSX0FSRV9ERVBFTkRFTlQgKGRkcikgPT0g TlVMTF9UUkVFKQpAQCAtMTUxMSwxMSArMTUxNCwxNSBAQCBkaXN0cmlidXRl X2xvb3AgKHN0cnVjdCBsb29wICpsb29wLCB2ZWM8Z2ltcGxlICo+IHN0bXRz LAogCiAgICpkZXN0cm95X3AgPSBmYWxzZTsKICAgKm5iX2NhbGxzID0gMDsK LSAgYXV0b192ZWM8bG9vcF9wLCAzPiBsb29wX25lc3Q7Ci0gIGlmICghZmlu ZF9sb29wX25lc3QgKGxvb3AsICZsb29wX25lc3QpKQotICAgIHJldHVybiAw OworICBsb29wX25lc3QgPSBuZXcgdmVjPGxvb3BfcD4gKCk7CisgIGlmICgh ZmluZF9sb29wX25lc3QgKGxvb3AsIGxvb3BfbmVzdCkpCisgICAgeworICAg ICAgbG9vcF9uZXN0LT5yZWxlYXNlICgpOworICAgICAgZGVsZXRlIGxvb3Bf bmVzdDsKKyAgICAgIHJldHVybiAwOworICAgIH0KIAotICByZGcgPSBidWls ZF9yZGcgKGxvb3BfbmVzdCwgY2QpOworICByZGcgPSBidWlsZF9yZGcgKGxv b3AsIGNkKTsKICAgaWYgKCFyZGcpCiAgICAgewogICAgICAgaWYgKGR1bXBf ZmlsZSAmJiAoZHVtcF9mbGFncyAmIFRERl9ERVRBSUxTKSkKQEAgLTE1MjMs NiArMTUzMCw4IEBAIGRpc3RyaWJ1dGVfbG9vcCAoc3RydWN0IGxvb3AgKmxv b3AsIHZlYzxnaW1wbGUgKj4gc3RtdHMsCiAJCSAiTG9vcCAlZCBub3QgZGlz dHJpYnV0ZWQ6IGZhaWxlZCB0byBidWlsZCB0aGUgUkRHLlxuIiwKIAkJIGxv b3AtPm51bSk7CiAKKyAgICAgIGxvb3BfbmVzdC0+cmVsZWFzZSAoKTsKKyAg ICAgIGRlbGV0ZSBsb29wX25lc3Q7CiAgICAgICByZXR1cm4gMDsKICAgICB9 CiAKQEAgLTE2NDYsMTUgKzE2NTUsMTUgQEAgZGlzdHJpYnV0ZV9sb29wIChz dHJ1Y3QgbG9vcCAqbG9vcCwgdmVjPGdpbXBsZSAqPiBzdG10cywKIAkgICAg LyogZGVwZW5kZW5jZSBkaXJlY3Rpb24gLSAwIGlzIG5vIGRlcGVuZGVuY2Us IC0xIGlzIGJhY2ssCiAJICAgICAgIDEgaXMgZm9ydGgsIDIgaXMgYm90aCAo d2UgY2FuIHN0b3AgdGhlbiwgbWVyZ2luZyB3aWxsIG9jY3VyKS4gICovCiAJ ICAgIGludCBkaXIgPSAwOwotCSAgICBkaXIgPSBwZ19hZGRfZGVwZW5kZW5j ZV9lZGdlcyAocmRnLCBsb29wX25lc3QsIGRpciwKKwkgICAgZGlyID0gcGdf YWRkX2RlcGVuZGVuY2VfZWRnZXMgKHJkZywgZGlyLAogCQkJCQkgICBQR0RB VEEoaSktPndyaXRlcywKIAkJCQkJICAgUEdEQVRBKGopLT5yZWFkcyk7CiAJ ICAgIGlmIChkaXIgIT0gMikKLQkgICAgICBkaXIgPSBwZ19hZGRfZGVwZW5k ZW5jZV9lZGdlcyAocmRnLCBsb29wX25lc3QsIGRpciwKKwkgICAgICBkaXIg PSBwZ19hZGRfZGVwZW5kZW5jZV9lZGdlcyAocmRnLCBkaXIsCiAJCQkJCSAg ICAgUEdEQVRBKGkpLT5yZWFkcywKIAkJCQkJICAgICBQR0RBVEEoaiktPndy aXRlcyk7CiAJICAgIGlmIChkaXIgIT0gMikKLQkgICAgICBkaXIgPSBwZ19h ZGRfZGVwZW5kZW5jZV9lZGdlcyAocmRnLCBsb29wX25lc3QsIGRpciwKKwkg ICAgICBkaXIgPSBwZ19hZGRfZGVwZW5kZW5jZV9lZGdlcyAocmRnLCBkaXIs CiAJCQkJCSAgICAgUEdEQVRBKGkpLT53cml0ZXMsCiAJCQkJCSAgICAgUEdE QVRBKGopLT53cml0ZXMpOwogCSAgICBpZiAoZGlyID09IDEgfHwgZGlyID09 IDIpCkBAIC0xNzMwLDYgKzE3MzksOCBAQCBkaXN0cmlidXRlX2xvb3AgKHN0 cnVjdCBsb29wICpsb29wLCB2ZWM8Z2ltcGxlICo+IHN0bXRzLAogICAgIH0K IAogIGxkaXN0X2RvbmU6CisgIGxvb3BfbmVzdC0+cmVsZWFzZSAoKTsKKyAg ZGVsZXRlIGxvb3BfbmVzdDsKIAogICBGT1JfRUFDSF9WRUNfRUxUIChwYXJ0 aXRpb25zLCBpLCBwYXJ0aXRpb24pCiAgICAgcGFydGl0aW9uX2ZyZWUgKHBh cnRpdGlvbik7Ci0tIAoxLjkuMQoK --_002_VI1PR0802MB21768DDC39759A94BC4F2A54E7CD0VI1PR0802MB2176_--