From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 25272 invoked by alias); 9 Jun 2011 07:21:17 -0000 Received: (qmail 25260 invoked by uid 22791); 9 Jun 2011 07:21:15 -0000 X-SWARE-Spam-Status: No, hits=-2.1 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW X-Spam-Check-By: sourceware.org Received: from ch1ehsobe006.messaging.microsoft.com (HELO CH1EHSOBE011.bigfish.com) (216.32.181.186) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 09 Jun 2011 07:21:01 +0000 Received: from mail8-ch1-R.bigfish.com (216.32.181.168) by CH1EHSOBE011.bigfish.com (10.43.70.61) with Microsoft SMTP Server id 14.1.225.22; Thu, 9 Jun 2011 07:20:59 +0000 Received: from mail8-ch1 (localhost.localdomain [127.0.0.1]) by mail8-ch1-R.bigfish.com (Postfix) with ESMTP id D8CF59A81B8; Thu, 9 Jun 2011 07:20:59 +0000 (UTC) X-SpamScore: -2 X-BigFish: VPS-2(zz936eKzz1202hzz8275bhz32i2a8h668h839h34h61h) X-Spam-TCS-SCL: 0:0 X-Forefront-Antispam-Report: CIP:220.225.38.51;KIP:(null);UIP:(null);IPVD:NLI;H:kcinpunhjhc02.kpit.com;RD:none;EFVD:NLI Received: from mail8-ch1 (localhost.localdomain [127.0.0.1]) by mail8-ch1 (MessageSwitch) id 1307604059695786_1568; Thu, 9 Jun 2011 07:20:59 +0000 (UTC) Received: from CH1EHSMHS033.bigfish.com (snatpool1.int.messaging.microsoft.com [10.43.68.245]) by mail8-ch1.bigfish.com (Postfix) with ESMTP id A18EA18E804B; Thu, 9 Jun 2011 07:20:59 +0000 (UTC) Received: from kcinpunhjhc02.kpit.com (220.225.38.51) by CH1EHSMHS033.bigfish.com (10.43.70.33) with Microsoft SMTP Server (TLS) id 14.1.225.22; Thu, 9 Jun 2011 07:20:59 +0000 Received: from Kcinpunhjcms01.kpit.com ([172.10.16.121]) by kcinpunhjhc02.kpit.com ([172.10.16.124]) with mapi; Thu, 9 Jun 2011 12:50:56 +0530 From: Kaushik Phatak To: "gcc-patches@gcc.gnu.org" CC: "law@redhat.com" , Prafulla Thakare Date: Thu, 09 Jun 2011 07:40:00 -0000 Subject: [Patch : H8300] Bug fix for bit insn and minor tweaks to insns Message-ID: Content-Type: multipart/mixed; boundary="_002_F56EA673D3E56E48804FE2B0D23EFD2D22FC98AC8EKCINPUNHJCMS0_" MIME-Version: 1.0 X-OriginatorOrg: kpitcummins.com 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/msg00705.txt.bz2 --_002_F56EA673D3E56E48804FE2B0D23EFD2D22FC98AC8EKCINPUNHJCMS0_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Content-length: 844 Hi, The following patch fixes an ICE that is generated when the compiler tries to perform bit manipulation for logical operations when the source and=20 destination address does not match. The testcase is also included in the=20 patch(gcc.dg). The additional condition in the insn takes care of the ICE which occurs at = '-O1'. The other insn's are reordered to give preference to bit instructions using= existing constraints. Ok to apply? Thanks & Regards, Kaushik Phatak www.kpitgnutools.com 2011-06-09 Kaushik Phatak * config/h8300/h8300.md (bsetqi_msx, bclrqi_msx, bnotqi_msx): Added=20 condition to disallow non-identical memory locations. (*andqi3_2, andqi3_1, iorqi3_1, xorqi3_1): Reorder insn to give preference to bit manipulation instructions. * gcc.dg/h8300-bit-insn-ice2.2: New testcase. --_002_F56EA673D3E56E48804FE2B0D23EFD2D22FC98AC8EKCINPUNHJCMS0_ Content-Type: application/octet-stream; name="h8_bit.diff" Content-Description: h8_bit.diff Content-Disposition: attachment; filename="h8_bit.diff"; size=5423; creation-date="Thu, 09 Jun 2011 12:16:04 GMT"; modification-date="Thu, 09 Jun 2011 12:26:13 GMT" Content-Transfer-Encoding: base64 Content-length: 7353 SW5kZXg6IGdjYy9jb25maWcvaDgzMDAvaDgzMDAubWQKPT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQotLS0gZ2NjL2NvbmZpZy9oODMwMC9oODMwMC5tZAkocmV2 aXNpb24gMTc0ODMzKQorKysgZ2NjL2NvbmZpZy9oODMwMC9oODMwMC5tZAko d29ya2luZyBjb3B5KQpAQCAtMTc2Nyw3ICsxNzY3LDggQEAKICAgWyhzZXQg KG1hdGNoX29wZXJhbmQ6UUkgMCAiYml0X3JlZ2lzdGVyX2luZGlyZWN0X29w ZXJhbmQiICI9V1UiKQogCShhbmQ6UUkgKG1hdGNoX29wZXJhbmQ6UUkgMSAi Yml0X3JlZ2lzdGVyX2luZGlyZWN0X29wZXJhbmQiICIlMCIpCiAJCShtYXRj aF9vcGVyYW5kOlFJIDIgInNpbmdsZV96ZXJvX29wZXJhbmQiICJZMCIpKSld Ci0gICJUQVJHRVRfSDgzMDBTWCIKKyAgIlRBUkdFVF9IODMwMFNYCisgICAm JiBJTlRWQUwgKFhFWFAgKG9wZXJhbmRzWzBdLCAwKSkgPT0gSU5UVkFMIChY RVhQIChvcGVyYW5kc1sxXSwgMCkpIgogICAiYmNsclxcdCVXMiwlMCIKICAg WyhzZXRfYXR0ciAibGVuZ3RoIiAiOCIpXSkKIApAQCAtMTgwMCwyOSArMTgw MSwzMSBAQAogICAiVEFSR0VUX0g4MzAwU1giCiAgICJiY2xyXFx0JVcyLCUw IgogICBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQorCiAoZGVmaW5lX2lu c24gIiphbmRxaTNfMiIKLSAgWyhzZXQgKG1hdGNoX29wZXJhbmQ6UUkgMCAi Yml0X29wZXJhbmQiICI9clEsciIpCi0JKGFuZDpRSSAobWF0Y2hfb3BlcmFu ZDpRSSAxICJiaXRfb3BlcmFuZCIgIiUwLFdVIikKLQkJKG1hdGNoX29wZXJh bmQ6UUkgMiAiaDgzMDBfc3JjX29wZXJhbmQiICJyUWksSVAxPlgiKSkpXQor ICBbKHNldCAobWF0Y2hfb3BlcmFuZDpRSSAwICJiaXRfb3BlcmFuZCIgIj1V LHJRLHIiKQorCShhbmQ6UUkgKG1hdGNoX29wZXJhbmQ6UUkgMSAiYml0X29w ZXJhbmQiICIlMCwwLFdVIikKKwkJKG1hdGNoX29wZXJhbmQ6UUkgMiAiaDgz MDBfc3JjX29wZXJhbmQiICJZMCxyUWksSVAxPlgiKSkpXQogICAiVEFSR0VU X0g4MzAwU1giCiAgICJACi0gICBhbmQJJVgyLCVYMAotICAgYmZsZAklMiwl MSwlUjAiCi0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIiosOCIpCi0gICAoc2V0 X2F0dHIgImxlbmd0aF90YWJsZSIgImxvZ2ljYiwqIikKLSAgIChzZXRfYXR0 ciAiY2MiICJzZXRfem52LG5vbmVfMGhpdCIpXSkKKyAgIGJjbHJcXHQgJVcy LCVSMAorICAgYW5kICAlWDIsJVgwCisgICBiZmxkICUyLCUxLCVSMCIKKyAg WyhzZXRfYXR0ciAibGVuZ3RoIiAiOCwqLDgiKQorICAgKHNldF9hdHRyICJs ZW5ndGhfdGFibGUiICIqLGxvZ2ljYiwqIikKKyAgIChzZXRfYXR0ciAiY2Mi ICJub25lXzBoaXQsc2V0X3pudixub25lXzBoaXQiKV0pCiAKIChkZWZpbmVf aW5zbiAiYW5kcWkzXzEiCi0gIFsoc2V0IChtYXRjaF9vcGVyYW5kOlFJIDAg ImJpdF9vcGVyYW5kIiAiPXIsVSIpCisgIFsoc2V0IChtYXRjaF9vcGVyYW5k OlFJIDAgImJpdF9vcGVyYW5kIiAiPVUsciIpCiAJKGFuZDpRSSAobWF0Y2hf b3BlcmFuZDpRSSAxICJiaXRfb3BlcmFuZCIgIiUwLDAiKQotCQkobWF0Y2hf b3BlcmFuZDpRSSAyICJoODMwMF9zcmNfb3BlcmFuZCIgInJuLG4iKSkpXQor CQkobWF0Y2hfb3BlcmFuZDpRSSAyICJoODMwMF9zcmNfb3BlcmFuZCIgIlkw LHJuIikpKV0KICAgInJlZ2lzdGVyX29wZXJhbmQgKG9wZXJhbmRzWzBdLCBR SW1vZGUpCiAgICB8fCBzaW5nbGVfemVyb19vcGVyYW5kIChvcGVyYW5kc1sy XSwgUUltb2RlKSIKICAgIkAKLSAgIGFuZAklWDIsJVgwCi0gICBiY2xyCSVX MiwlUjAiCisgICBiY2xyICVXMiwlUjAKKyAgIGFuZCAgJVgyLCVYMCIKICAg WyhzZXRfYXR0ciAibGVuZ3RoIiAiMiw4IikKLSAgIChzZXRfYXR0ciAiY2Mi ICJzZXRfem52LG5vbmVfMGhpdCIpXSkKKyAgIChzZXRfYXR0ciAiY2MiICJu b25lXzBoaXQsc2V0X3pudiIpXSkKIAogKGRlZmluZV9leHBhbmQgImFuZHFp MyIKICAgWyhzZXQgKG1hdGNoX29wZXJhbmQ6UUkgMCAicmVnaXN0ZXJfb3Bl cmFuZCIgIiIpCkBAIC0xOTAzLDExICsxOTA2LDEzIEBACiA7OyAtLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCiA7OyBPUiBJTlNUUlVDVElPTlMKIDs7IC0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKwogKGRlZmluZV9pbnNuICJic2V0 cWlfbXN4IgogICBbKHNldCAobWF0Y2hfb3BlcmFuZDpRSSAwICJiaXRfcmVn aXN0ZXJfaW5kaXJlY3Rfb3BlcmFuZCIgIj1XVSIpCiAJKGlvcjpRSSAobWF0 Y2hfb3BlcmFuZDpRSSAxICJiaXRfcmVnaXN0ZXJfaW5kaXJlY3Rfb3BlcmFu ZCIgIiUwIikKIAkJKG1hdGNoX29wZXJhbmQ6UUkgMiAic2luZ2xlX29uZV9v cGVyYW5kIiAiWTIiKSkpXQotICAiVEFSR0VUX0g4MzAwU1giIAorICAiVEFS R0VUX0g4MzAwU1gKKyAgICYmIElOVFZBTCAoWEVYUCAob3BlcmFuZHNbMF0s IDApKSA9PSBJTlRWQUwgKFhFWFAgKG9wZXJhbmRzWzFdLCAwKSkiCiAgICJi c2V0XFx0JVYyLCUwIgogICBbKHNldF9hdHRyICJsZW5ndGgiICI4IildKQog CkBAIC0xOTQyLDE4ICsxOTQ3LDE5IEBACiAgIFsoc2V0X2F0dHIgImxlbmd0 aCIgIjgiKV0pCiAKIChkZWZpbmVfaW5zbiAiaW9ycWkzXzEiCi0gIFsoc2V0 IChtYXRjaF9vcGVyYW5kOlFJIDAgImJpdF9vcGVyYW5kIiAiPXJRLFUiKQor ICBbKHNldCAobWF0Y2hfb3BlcmFuZDpRSSAwICJiaXRfb3BlcmFuZCIgIj1V LHJRIikKIAkoaW9yOlFJIChtYXRjaF9vcGVyYW5kOlFJIDEgImJpdF9vcGVy YW5kIiAiJTAsMCIpCi0JCShtYXRjaF9vcGVyYW5kOlFJIDIgImg4MzAwX3Ny Y19vcGVyYW5kIiAiclFpLG4iKSkpXQorCQkobWF0Y2hfb3BlcmFuZDpRSSAy ICJoODMwMF9zcmNfb3BlcmFuZCIgIlkyLHJRaSIpKSldCiAgICJUQVJHRVRf SDgzMDBTWCB8fCByZWdpc3Rlcl9vcGVyYW5kIChvcGVyYW5kc1swXSwgUUlt b2RlKQogICAgfHwgc2luZ2xlX29uZV9vcGVyYW5kIChvcGVyYW5kc1syXSwg UUltb2RlKSIKICAgIkAKLSAgIG9yXFx0JVgyLCVYMAotICAgYnNldFxcdCVW MiwlUjAiCi0gIFsoc2V0X2F0dHIgImxlbmd0aCIgIiosOCIpCi0gICAoc2V0 X2F0dHIgImxlbmd0aF90YWJsZSIgImxvZ2ljYiwqIikKLSAgIChzZXRfYXR0 ciAiY2MiICJzZXRfem52LG5vbmVfMGhpdCIpXSkKKyAgIGJzZXRcXHQlVjIs JVIwCisgICBvclxcdCVYMiwlWDAiCisgIFsoc2V0X2F0dHIgImxlbmd0aCIg IjgsKiIpCisgICAoc2V0X2F0dHIgImxlbmd0aF90YWJsZSIgIiosbG9naWNi IikKKyAgIChzZXRfYXR0ciAiY2MiICJub25lXzBoaXQsc2V0X3pudiIpXSkK IAorCiAoZGVmaW5lX2V4cGFuZCAiaW9ycWkzIgogICBbKHNldCAobWF0Y2hf b3BlcmFuZDpRSSAwICJyZWdpc3Rlcl9vcGVyYW5kIiAiIikKIAkoaW9yOlFJ IChtYXRjaF9vcGVyYW5kOlFJIDEgInJlZ2lzdGVyX29wZXJhbmQiICIiKQpA QCAtMTk4Miw3ICsxOTg4LDggQEAKICAgWyhzZXQgKG1hdGNoX29wZXJhbmQ6 UUkgMCAiYml0X3JlZ2lzdGVyX2luZGlyZWN0X29wZXJhbmQiICI9V1UiKQog CSh4b3I6UUkgKG1hdGNoX29wZXJhbmQ6UUkgMSAiYml0X3JlZ2lzdGVyX2lu ZGlyZWN0X29wZXJhbmQiICIlMCIpCiAJCShtYXRjaF9vcGVyYW5kOlFJIDIg InNpbmdsZV9vbmVfb3BlcmFuZCIgIlkyIikpKV0KLSAgIlRBUkdFVF9IODMw MFNYIgorICAiVEFSR0VUX0g4MzAwU1gKKyAgICYmIElOVFZBTCAoWEVYUCAo b3BlcmFuZHNbMF0sIDApKSA9PSBJTlRWQUwgKFhFWFAgKG9wZXJhbmRzWzFd LCAwKSkiCiAgICJibm90XFx0JVYyLCUwIgogICBbKHNldF9hdHRyICJsZW5n dGgiICI4IildKQogCkBAIC0yMDE3LDE4ICsyMDI0LDE5IEBACiAgIFsoc2V0 X2F0dHIgImxlbmd0aCIgIjgiKV0pCiAKIChkZWZpbmVfaW5zbiAieG9ycWkz XzEiCi0gIFsoc2V0IChtYXRjaF9vcGVyYW5kOlFJIDAgImJpdF9vcGVyYW5k IiAiPXIsVSIpCisgIFsoc2V0IChtYXRjaF9vcGVyYW5kOlFJIDAgImJpdF9v cGVyYW5kIiAiPVUsciIpCiAJKHhvcjpRSSAobWF0Y2hfb3BlcmFuZDpRSSAx ICJiaXRfb3BlcmFuZCIgIiUwLDAiKQotCQkobWF0Y2hfb3BlcmFuZDpRSSAy ICJoODMwMF9zcmNfb3BlcmFuZCIgInJRaSxuIikpKV0KKwkJKG1hdGNoX29w ZXJhbmQ6UUkgMiAiaDgzMDBfc3JjX29wZXJhbmQiICJZMixyUWkiKSkpXQog ICAiVEFSR0VUX0g4MzAwU1ggfHwgcmVnaXN0ZXJfb3BlcmFuZCAob3BlcmFu ZHNbMF0sIFFJbW9kZSkKICAgIHx8IHNpbmdsZV9vbmVfb3BlcmFuZCAob3Bl cmFuZHNbMl0sIFFJbW9kZSkiCiAgICJACi0gICB4b3JcXHQlWDIsJVgwCi0g ICBibm90XFx0JVYyLCVSMCIKLSAgWyhzZXRfYXR0ciAibGVuZ3RoIiAiKiw4 IikKLSAgIChzZXRfYXR0ciAibGVuZ3RoX3RhYmxlIiAibG9naWNiLCoiKQot ICAgKHNldF9hdHRyICJjYyIgInNldF96bnYsbm9uZV8waGl0IildKQorICAg Ym5vdFxcdCVWMiwlUjAKKyAgIHhvclxcdCVYMiwlWDAiCisgIFsoc2V0X2F0 dHIgImxlbmd0aCIgIjgsKiIpCisgICAoc2V0X2F0dHIgImxlbmd0aF90YWJs ZSIgIiosbG9naWNiIikKKyAgIChzZXRfYXR0ciAiY2MiICJub25lXzBoaXQs c2V0X3pudiIpXSkKIAorCiAoZGVmaW5lX2V4cGFuZCAieG9ycWkzIgogICBb KHNldCAobWF0Y2hfb3BlcmFuZDpRSSAwICJyZWdpc3Rlcl9vcGVyYW5kIiAi IikKIAkoeG9yOlFJIChtYXRjaF9vcGVyYW5kOlFJIDEgInJlZ2lzdGVyX29w ZXJhbmQiICIiKQpJbmRleDogZ2NjL3Rlc3RzdWl0ZS9nY2MuZGcvaDgzMDAt Yml0LWluc24taWNlMi5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGdj Yy90ZXN0c3VpdGUvZ2NjLmRnL2g4MzAwLWJpdC1pbnNuLWljZTIuYwkocmV2 aXNpb24gMCkKKysrIGdjYy90ZXN0c3VpdGUvZ2NjLmRnL2g4MzAwLWJpdC1p bnNuLWljZTIuYwkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxNSBAQAorLyog eyBkZy1za2lwLWlmICIiIHsgImg4MzAwKi0qLSoiIH0gIioiICItbXN4KiIg fSAgKi8KKy8qIHsgZGctb3B0aW9ucyAiLU8yIiB9ICovCisvKiBJQ0UgZm9y IGJpdCBpbnN0cnVjdGlvbiBnZW5lcmF0aW9uIHVzaW5nIDE2LWJpdCBjb25z dCAqLworCisjZGVmaW5lIE1TVFBDUkEgKCoodm9sYXRpbGUgdW5zaWduZWQg Y2hhciopMHhGRkZGQzkpCisjZGVmaW5lIE1TVFBDUkEyICgqKHZvbGF0aWxl IHVuc2lnbmVkIGNoYXIqKTB4RkZGREM4KQorCitpbnQKK21haW4gKHZvaWQp Cit7CisgIE1TVFBDUkEgPSBNU1RQQ1JBMiAmIH4weDAxOworICBNU1RQQ1JB ID0gTVNUUENSQTIgXiB+MHhGRTsKKyAgTVNUUENSQSA9IE1TVFBDUkEyIHwg fjB4RkU7CisgIHJldHVybiAwOworfQo= --_002_F56EA673D3E56E48804FE2B0D23EFD2D22FC98AC8EKCINPUNHJCMS0_--