From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 14872 invoked by alias); 16 Jun 2011 06:00:25 -0000 Received: (qmail 14859 invoked by uid 22791); 16 Jun 2011 06:00:23 -0000 X-SWARE-Spam-Status: No, hits=-1.9 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW,TW_DD X-Spam-Check-By: sourceware.org Received: from mail-ew0-f47.google.com (HELO mail-ew0-f47.google.com) (209.85.215.47) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 16 Jun 2011 06:00:06 +0000 Received: by ewy5 with SMTP id 5so487560ewy.20 for ; Wed, 15 Jun 2011 23:00:04 -0700 (PDT) MIME-Version: 1.0 Received: by 10.213.2.202 with SMTP id 10mr936573ebk.110.1308127515689; Wed, 15 Jun 2011 01:45:15 -0700 (PDT) Received: by 10.213.27.203 with HTTP; Wed, 15 Jun 2011 01:45:15 -0700 (PDT) In-Reply-To: References: Date: Thu, 16 Jun 2011 06:27:00 -0000 Message-ID: Subject: Re: [PATCH, SMS] Fix violation of memory dependence From: Revital Eres To: Ayal Zaks Cc: gcc-patches@gcc.gnu.org, Patch Tracking Content-Type: multipart/mixed; boundary=0015174c35b8e4c46404a5bc2be9 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 X-SW-Source: 2011-06/txt/msg01196.txt.bz2 --0015174c35b8e4c46404a5bc2be9 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-length: 771 Hello, >>> =A0 =A0 =A0 =A0 * ddg.c (add_intra_loop_mem_dep): New function. > > You could check first thing if (from->cuid =3D=3D to->cuid), for code cla= rity. Attached is the new version of the patch which addresses this. The patch was re-tested as follows: On ppc64-redhat-linux regtest as well as bootstrap with SMS flags enabling SMS also on loops with stage count 1. Regtested on SPU. On arm-linux-gnueabi bootstrap c language with SMS flags enabling SMS also on loops with stage count 1 and currently regression testing on c,c++. OK for mainline once regtest on arm-linux-gnueabi completes? Thanks, Revital gcc/ * ddg.c (add_intra_loop_mem_dep): New function. (build_intra_loop_deps): Call it. testsuite/ * gcc.dg/sms-9.c: New file. --0015174c35b8e4c46404a5bc2be9 Content-Type: text/plain; charset=US-ASCII; name="patch_sms_14_6.txt" Content-Disposition: attachment; filename="patch_sms_14_6.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_goxr6k4f0 Content-length: 5210 SW5kZXg6IGRkZy5jDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotLS0gZGRn LmMJKHJldmlzaW9uIDE3NDkwNikNCisrKyBkZGcuYwkod29ya2luZyBjb3B5 KQ0KQEAgLTM5MCw2ICszOTAsMzggQEAgaW5zbnNfbWF5X2FsaWFzX3AgKHJ0 eCBpbnNuMSwgcnR4IGluc24yKQ0KIAkJCSAmUEFUVEVSTiAoaW5zbjIpKTsN CiB9DQogDQorLyogR2l2ZW4gdHdvIG5vZGVzLCBhbmFseXplIHRoZWlyIFJU TCBpbnNucyBhbmQgYWRkIGludHJhLWxvb3AgbWVtIGRlcHMNCisgICB0byBk ZGcgRy4gICovDQorc3RhdGljIHZvaWQNCithZGRfaW50cmFfbG9vcF9tZW1f ZGVwIChkZGdfcHRyIGcsIGRkZ19ub2RlX3B0ciBmcm9tLCBkZGdfbm9kZV9w dHIgdG8pDQorew0KKw0KKyAgaWYgKChmcm9tLT5jdWlkID09IHRvLT5jdWlk KQ0KKyAgICAgIHx8ICFpbnNuc19tYXlfYWxpYXNfcCAoZnJvbS0+aW5zbiwg dG8tPmluc24pKQ0KKyAgICAvKiBEbyBub3QgY3JlYXRlIGVkZ2UgaWYgbWVt b3J5IHJlZmVyZW5jZXMgaGF2ZSBkaXNqb2ludCBhbGlhcyBzZXRzDQorICAg ICAgIG9yICd0bycgYW5kICdmcm9tJyBhcmUgdGhlIHNhbWUgaW5zdHJ1Y3Rp b24uICAqLw0KKyAgICByZXR1cm47DQorDQorICBpZiAobWVtX3dyaXRlX2lu c25fcCAoZnJvbS0+aW5zbikpDQorICAgIHsNCisgICAgICBpZiAobWVtX3Jl YWRfaW5zbl9wICh0by0+aW5zbikpDQorCWNyZWF0ZV9kZGdfZGVwX25vX2xp bmsgKGcsIGZyb20sIHRvLA0KKwkJCQlERUJVR19JTlNOX1AgKHRvLT5pbnNu KQ0KKwkJCQk/IEFOVElfREVQIDogVFJVRV9ERVAsIE1FTV9ERVAsIDApOw0K KyAgICAgIGVsc2UNCisJY3JlYXRlX2RkZ19kZXBfbm9fbGluayAoZywgZnJv bSwgdG8sDQorCQkJCURFQlVHX0lOU05fUCAodG8tPmluc24pDQorCQkJCT8g QU5USV9ERVAgOiBPVVRQVVRfREVQLCBNRU1fREVQLCAwKTsNCisgICAgfQ0K KyAgZWxzZQ0KKyAgICB7DQorICAgICAgaWYgKG1lbV9yZWFkX2luc25fcCAo dG8tPmluc24pKQ0KKwlyZXR1cm47DQorICAgICAgZWxzZQ0KKwljcmVhdGVf ZGRnX2RlcF9ub19saW5rIChnLCBmcm9tLCB0bywgQU5USV9ERVAsIE1FTV9E RVAsIDApOw0KKyAgICB9DQorfQ0KKw0KIC8qIEdpdmVuIHR3byBub2Rlcywg YW5hbHl6ZSB0aGVpciBSVEwgaW5zbnMgYW5kIGFkZCBpbnRlci1sb29wIG1l bSBkZXBzDQogICAgdG8gZGRnIEcuICAqLw0KIHN0YXRpYyB2b2lkDQpAQCAt NDc3LDEwICs1MDksMjIgQEAgYnVpbGRfaW50cmFfbG9vcF9kZXBzIChkZGdf cHRyIGcpDQogCSAgICAgIGlmIChERUJVR19JTlNOX1AgKGpfbm9kZS0+aW5z bikpDQogCQljb250aW51ZTsNCiAJICAgICAgaWYgKG1lbV9hY2Nlc3NfaW5z bl9wIChqX25vZGUtPmluc24pKQ0KLSAJCS8qIERvbid0IGJvdGhlciBjYWxj dWxhdGluZyBpbnRlci1sb29wIGRlcCBpZiBhbiBpbnRyYS1sb29wIGRlcA0K LQkJICAgYWxyZWFkeSBleGlzdHMuICAqLw0KKwkJew0KKwkJICAvKiBEb24n dCBib3RoZXIgY2FsY3VsYXRpbmcgaW50ZXItbG9vcCBkZXAgaWYgYW4gaW50 cmEtbG9vcCBkZXANCisJCSAgICAgYWxyZWFkeSBleGlzdHMuICAqLw0KIAkg ICAgICAJICBpZiAoISBURVNUX0JJVCAoZGVzdF9ub2RlLT5zdWNjZXNzb3Jz LCBqKSkNCiAJCSAgICBhZGRfaW50ZXJfbG9vcF9tZW1fZGVwIChnLCBkZXN0 X25vZGUsIGpfbm9kZSk7DQorCQkgIC8qIElmIC1mbW9kdWxvLXNjaGVkLWFs bG93LXJlZ21vdmVzDQorCQkgICAgIGlzIHNldCBjZXJ0YWluIGFudGktZGVw IGVkZ2VzIGFyZSBub3QgY3JlYXRlZC4NCisJCSAgICAgSXQgbWlnaHQgYmUg dGhhdCB0aGVzZSBhbnRpLWRlcCBlZGdlcyBhcmUgb24gdGhlDQorCQkgICAg IHBhdGggZnJvbSBvbmUgbWVtb3J5IGluc3RydWN0aW9uIHRvIGFub3RoZXIg c3VjaCB0aGF0DQorCQkgICAgIHJlbW92aW5nIHRoZXNlIGVkZ2VzIGNvdWxk IGNhdXNlIGEgdmlvbGF0aW9uIG9mIHRoZQ0KKwkJICAgICBtZW1vcnkgZGVw ZW5kZW5jaWVzLiAgVGh1cyB3ZSBhZGQgaW50cmEgZWRnZXMgYmV0d2Vlbg0K KwkJICAgICBldmVyeSB0d28gbWVtb3J5IGluc3RydWN0aW9ucyBpbiB0aGlz IGNhc2UuICAqLw0KKwkJICBpZiAoZmxhZ19tb2R1bG9fc2NoZWRfYWxsb3df cmVnbW92ZXMNCisJCSAgICAgICYmICFURVNUX0JJVCAoZGVzdF9ub2RlLT5w cmVkZWNlc3NvcnMsIGopKQ0KKwkJICAgIGFkZF9pbnRyYV9sb29wX21lbV9k ZXAgKGcsIGpfbm9kZSwgZGVzdF9ub2RlKTsNCisJCX0NCiAgICAgICAgICAg ICB9DQogICAgICAgICB9DQogICAgIH0NCkluZGV4OiB0ZXN0c3VpdGUvZ2Nj LmRnL3Ntcy05LmMNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCi0tLSB0ZXN0 c3VpdGUvZ2NjLmRnL3Ntcy05LmMJKHJldmlzaW9uIDApDQorKysgdGVzdHN1 aXRlL2djYy5kZy9zbXMtOS5jCShyZXZpc2lvbiAwKQ0KQEAgLTAsMCArMSw2 MCBAQA0KKy8qIHsgZGctZG8gcnVuIH0gKi8NCisvKiB7IGRnLW9wdGlvbnMg Ii1PMiAtZm1vZHVsby1zY2hlZCAtZm5vLWF1dG8taW5jLWRlYyAtTzIgLWZt b2R1bG8tc2NoZWQtYWxsb3ctcmVnbW92ZXMiIH0gKi8NCisNCisjaW5jbHVk ZSA8c3RkbGliLmg+DQorI2luY2x1ZGUgPHN0ZGFyZy5oPg0KKw0KK3N0cnVj dCBkZl9yZWZfaW5mbw0KK3sNCisgIHVuc2lnbmVkIGludCAqYmVnaW47DQor ICB1bnNpZ25lZCBpbnQgKmNvdW50Ow0KK307DQorDQorZXh0ZXJuIHZvaWQg Km1lbXNldCAodm9pZCAqcywgaW50IGMsIF9fU0laRV9UWVBFX18gbik7DQor DQorDQorX19hdHRyaWJ1dGVfXyAoKG5vaW5saW5lKSkNCitpbnQNCitkZl9y ZW9yZ2FuaXplX3JlZnNfYnlfcmVnX2J5X2luc24gKHN0cnVjdCBkZl9yZWZf aW5mbyAqcmVmX2luZm8sDQorCQkJICAgICAgICAgICBpbnQgbnVtLCB1bnNp Z25lZCBpbnQgc3RhcnQpDQorew0KKyAgdW5zaWduZWQgaW50IG0gPSBudW07 DQorICB1bnNpZ25lZCBpbnQgb2Zmc2V0ID0gNzc7DQorICB1bnNpZ25lZCBp bnQgcjsNCisNCisgIGZvciAociA9IHN0YXJ0OyByIDwgbTsgcisrKQ0KKyAg ICB7DQorICAgICAgcmVmX2luZm8tPmJlZ2luW3JdID0gb2Zmc2V0Ow0KKyAg ICAgIG9mZnNldCArPSByZWZfaW5mby0+Y291bnRbcl07DQorICAgICAgcmVm X2luZm8tPmNvdW50W3JdID0gMDsNCisgICAgfQ0KKw0KKyAgcmV0dXJuIG9m ZnNldDsNCit9DQorDQoraW50DQorbWFpbiAoKQ0KK3sNCisgIHN0cnVjdCBk Zl9yZWZfaW5mbyB0ZW1wOw0KKyAgaW50IG51bSA9IDEwMDsNCisgIHVuc2ln bmVkIGludCBzdGFydCA9IDU7DQorICBpbnQgaSwgb2Zmc2V0Ow0KKw0KKyAg dGVtcC5iZWdpbiA9IG1hbGxvYyAoMTAwICogc2l6ZW9mICh1bnNpZ25lZCBp bnQpKTsNCisgIHRlbXAuY291bnQgPSBtYWxsb2MgKDEwMCAqIHNpemVvZiAo dW5zaWduZWQgaW50KSk7DQorDQorICBtZW1zZXQgKHRlbXAuYmVnaW4sIDAs IHNpemVvZiAodW5zaWduZWQgaW50KSAqIG51bSk7DQorICBtZW1zZXQgKHRl bXAuY291bnQsIDAsIHNpemVvZiAodW5zaWduZWQgaW50KSAqIG51bSk7DQor DQorICBmb3IgKGkgPSAwOyBpIDwgbnVtOyBpKyspDQorICAgIHRlbXAuY291 bnRbaV0gPSBpICsgMTsNCisNCisgIG9mZnNldCA9IGRmX3Jlb3JnYW5pemVf cmVmc19ieV9yZWdfYnlfaW5zbiAoJnRlbXAsIG51bSwgc3RhcnQpOw0KKw0K KyAgaWYgKG9mZnNldCAhPSA1MTEyKQ0KKyAgICBhYm9ydCAoKTsNCisNCisg IGZyZWUgKHRlbXAuYmVnaW4pOw0KKyAgZnJlZSAodGVtcC5jb3VudCk7DQor ICByZXR1cm4gMDsNCit9DQo= --0015174c35b8e4c46404a5bc2be9--