From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19432 invoked by alias); 30 Jan 2015 17:48:32 -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 19347 invoked by uid 89); 30 Jan 2015 17:48:30 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-3.7 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS,SPF_PASS,T_RP_MATCHES_RCVD autolearn=ham version=3.3.2 X-HELO: mx1.redhat.com Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-GCM-SHA384 encrypted) ESMTPS; Fri, 30 Jan 2015 17:48:26 +0000 Received: from int-mx10.intmail.prod.int.phx2.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id t0UHmOAp017821 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL) for ; Fri, 30 Jan 2015 12:48:24 -0500 Received: from Vladimirs-MacBook-Pro.local (vpn-51-195.rdu2.redhat.com [10.10.51.195]) by int-mx10.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id t0UHmNpf022933 for ; Fri, 30 Jan 2015 12:48:23 -0500 Message-ID: <54CBC3E7.9030907@redhat.com> Date: Fri, 30 Jan 2015 19:03:00 -0000 From: Vladimir Makarov User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:31.0) Gecko/20100101 Thunderbird/31.4.0 MIME-Version: 1.0 To: "gcc-patches@gcc.gnu.org" Subject: patch to fix PR64617 Content-Type: multipart/mixed; boundary="------------040707000705050405030206" X-IsSubscribed: yes X-SW-Source: 2015-01/txt/msg02748.txt.bz2 This is a multi-part message in MIME format. --------------040707000705050405030206 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-length: 595 The following patch fixes https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64617 The patch was bootstrapped and tested on x86-64 and ppc64. Committed as rev.220294. 2015-01-30 Vladimir Makarov PR target/64617 * lra-constraints.c (prohibited_class_reg_set_mode_p): New function. (process_alt_operands): Use it. (curr_insn_transform): Check the optional reload pseudo class is ok for the mode. 2015-01-30 Vladimir Makarov PR target/64617 * gcc.target/i386/pr64617.c: New test. --------------040707000705050405030206 Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="pr64617.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="pr64617.patch" Content-length: 5482 SW5kZXg6IGxyYS1jb25zdHJhaW50cy5jCj09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0KLS0tIGxyYS1jb25zdHJhaW50cy5jCShyZXZpc2lvbiAyMjAxMjYpCisr KyBscmEtY29uc3RyYWludHMuYwkod29ya2luZyBjb3B5KQpAQCAtMTYzNyw2 ICsxNjM3LDIyIEBAIHJlZ19pbl9jbGFzc19wIChydHggcmVnLCBlbnVtIHJl Z19jbGFzcwogICByZXR1cm4gaW5fY2xhc3NfcCAocmVnLCBjbCwgTlVMTCk7 CiB9CiAKKy8qIFJldHVybiB0cnVlIGlmIFNFVCBvZiBSQ0xBU1MgY29udGFp bnMgbm8gaGFyZCByZWdzIHdoaWNoIGNhbiBiZQorICAgdXNlZCBpbiBNT0RF LiAgKi8KK3N0YXRpYyBib29sCitwcm9oaWJpdGVkX2NsYXNzX3JlZ19zZXRf bW9kZV9wIChlbnVtIHJlZ19jbGFzcyByY2xhc3MsCisJCQkJIEhBUkRfUkVH X1NFVCAmc2V0LAorCQkJCSBlbnVtIG1hY2hpbmVfbW9kZSBtb2RlKQorewor ICBIQVJEX1JFR19TRVQgdGVtcDsKKyAgCisgIGxyYV9hc3NlcnQgKGhhcmRf cmVnX3NldF9zdWJzZXRfcCAoc2V0LCByZWdfY2xhc3NfY29udGVudHNbcmNs YXNzXSkpOworICBDT1BZX0hBUkRfUkVHX1NFVCAodGVtcCwgc2V0KTsKKyAg QU5EX0NPTVBMX0hBUkRfUkVHX1NFVCAodGVtcCwgbHJhX25vX2FsbG9jX3Jl Z3MpOworICByZXR1cm4gKGhhcmRfcmVnX3NldF9zdWJzZXRfcAorCSAgKHRl bXAsIGlyYV9wcm9oaWJpdGVkX2NsYXNzX21vZGVfcmVnc1tyY2xhc3NdW21v ZGVdKSk7Cit9CisKIC8qIE1ham9yIGZ1bmN0aW9uIHRvIGNob29zZSB0aGUg Y3VycmVudCBpbnNuIGFsdGVybmF0aXZlIGFuZCB3aGF0CiAgICBvcGVyYW5k cyBzaG91bGQgYmUgcmVsb2FkZWQgYW5kIGhvdy4JIElmIE9OTFlfQUxURVJO QVRJVkUgaXMgbm90CiAgICBuZWdhdGl2ZSB3ZSBzaG91bGQgY29uc2lkZXIg b25seSB0aGlzIGFsdGVybmF0aXZlLiAgUmV0dXJuIGZhbHNlIGlmCkBAIC0y MzExLDI4ICsyMzI3LDIwIEBAIHByb2Nlc3NfYWx0X29wZXJhbmRzIChpbnQg b25seV9hbHRlcm5hdGkKIAkJICAgICBub3QgaG9sZCB0aGUgbW9kZSB2YWx1 ZS4gICovCiAJCSAgJiYgISBIQVJEX1JFR05PX01PREVfT0sgKGlyYV9jbGFz c19oYXJkX3JlZ3MKIAkJCQkJICAgW3RoaXNfYWx0ZXJuYXRpdmVdWzBdLAot CQkJCQkgICBHRVRfTU9ERSAoKmN1cnJfaWQtPm9wZXJhbmRfbG9jW25vcF0p KSkKLQkJewotCQkgIEhBUkRfUkVHX1NFVCB0ZW1wOwotCQkgIAotCQkgIENP UFlfSEFSRF9SRUdfU0VUICh0ZW1wLCB0aGlzX2FsdGVybmF0aXZlX3NldCk7 Ci0JCSAgQU5EX0NPTVBMX0hBUkRfUkVHX1NFVCAodGVtcCwgbHJhX25vX2Fs bG9jX3JlZ3MpOworCQkJCQkgICBHRVRfTU9ERSAoKmN1cnJfaWQtPm9wZXJh bmRfbG9jW25vcF0pKQogCQkgIC8qIFRoZSBhYm92ZSBjb25kaXRpb24gaXMg bm90IGVub3VnaCBhcyB0aGUgZmlyc3QKIAkJICAgICByZWcgaW4gaXJhX2Ns YXNzX2hhcmRfcmVncyBjYW4gYmUgbm90IGFsaWduZWQgZm9yCiAJCSAgICAg bXVsdGktd29yZHMgbW9kZSB2YWx1ZXMuICAqLwotCQkgIGlmIChoYXJkX3Jl Z19zZXRfc3Vic2V0X3AgKHRlbXAsCi0JCQkJCSAgICAgaXJhX3Byb2hpYml0 ZWRfY2xhc3NfbW9kZV9yZWdzCi0JCQkJCSAgICAgW3RoaXNfYWx0ZXJuYXRp dmVdCi0JCQkJCSAgICAgW0dFVF9NT0RFICgqY3Vycl9pZC0+b3BlcmFuZF9s b2Nbbm9wXSldKSkKLQkJICAgIHsKLQkJICAgICAgaWYgKGxyYV9kdW1wX2Zp bGUgIT0gTlVMTCkKLQkJCWZwcmludGYKLQkJCSAgKGxyYV9kdW1wX2ZpbGUs Ci0JCQkgICAiICAgICAgICAgICAgYWx0PSVkOiByZWxvYWQgcHNldWRvIGZv ciBvcCAlZCAiCi0JCQkgICAiIGNhbiBub3QgaG9sZCB0aGUgbW9kZSB2YWx1 ZSAtLSByZWZ1c2VcbiIsCi0JCQkgICBuYWx0LCBub3ApOwotCQkgICAgICBn b3RvIGZhaWw7Ci0JCSAgICB9CisJCSAgJiYgKHByb2hpYml0ZWRfY2xhc3Nf cmVnX3NldF9tb2RlX3AKKwkJICAgICAgKHRoaXNfYWx0ZXJuYXRpdmUsIHRo aXNfYWx0ZXJuYXRpdmVfc2V0LAorCQkgICAgICAgR0VUX01PREUgKCpjdXJy X2lkLT5vcGVyYW5kX2xvY1tub3BdKSkpKQorCQl7CisJCSAgaWYgKGxyYV9k dW1wX2ZpbGUgIT0gTlVMTCkKKwkJICAgIGZwcmludGYgKGxyYV9kdW1wX2Zp bGUsCisJCQkgICAgICIgICAgICAgICAgICBhbHQ9JWQ6IHJlbG9hZCBwc2V1 ZG8gZm9yIG9wICVkICIKKwkJCSAgICAgIiBjYW4gbm90IGhvbGQgdGhlIG1v ZGUgdmFsdWUgLS0gcmVmdXNlXG4iLAorCQkJICAgICBuYWx0LCBub3ApOwor CQkgIGdvdG8gZmFpbDsKIAkJfQogCiAJICAgICAgLyogQ2hlY2sgc3Ryb25n IGRpc2NvdXJhZ2VtZW50IG9mIHJlbG9hZCBvZiBub24tY29uc3RhbnQKQEAg LTM3MzIsNiArMzc0MCwxMSBAQCBjdXJyX2luc25fdHJhbnNmb3JtIChib29s IGNoZWNrX29ubHlfcCkKIAkgICAgICAmJiByZWdubyA8IG5ld19yZWdub19z dGFydAogCSAgICAgICYmICEgbHJhX2Zvcm1lcl9zY3JhdGNoX3AgKHJlZ25v KQogCSAgICAgICYmIHJlZ19yZW51bWJlcltyZWdub10gPCAwCisJICAgICAg LyogQ2hlY2sgdGhhdCB0aGUgb3B0aW9uYWwgcmVsb2FkIHBzZXVkbyB3aWxs IGJlIGFibGUgdG8KKwkJIGhvbGQgZ2l2ZW4gbW9kZSB2YWx1ZS4gICovCisJ ICAgICAgJiYgISAocHJvaGliaXRlZF9jbGFzc19yZWdfc2V0X21vZGVfcAor CQkgICAgKGdvYWxfYWx0W2ldLCByZWdfY2xhc3NfY29udGVudHNbZ29hbF9h bHRbaV1dLAorCQkgICAgIFBTRVVET19SRUdOT19NT0RFIChyZWdubykpKQog CSAgICAgICYmIChjdXJyX2luc25fc2V0ID09IE5VTExfUlRYCiAJCSAgfHwg ISgoUkVHX1AgKFNFVF9TUkMgKGN1cnJfaW5zbl9zZXQpKQogCQkJfHwgTUVN X1AgKFNFVF9TUkMgKGN1cnJfaW5zbl9zZXQpKQpJbmRleDogdGVzdHN1aXRl L2djYy50YXJnZXQvaTM4Ni9wcjY0NjE3LmMKPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PQotLS0gdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9wcjY0NjE3LmMJ KHJldmlzaW9uIDApCisrKyB0ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L3By NjQ2MTcuYwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDM3IEBACisvKiB7 IGRnLWRvIGNvbXBpbGUgfSAqLworLyogeyBkZy1vcHRpb25zICItTyAtZnRy ZWUtdmVjdG9yaXplIC1tYXZ4NTEyYncgLW1hcmNoPXNsbSIgfSAqLworCit1 bnNpZ25lZCBzaG9ydCBvdXQyWzEyOCAqIDhdLCBiMCwgYjEsIGIyLCBiMywg YjQsIGI1LCBiNiwgYjcsIGI4OworCit2b2lkCitmb28gKHVuc2lnbmVkIHNo b3J0IGEwLCB1bnNpZ25lZCBzaG9ydCBhMSwgdW5zaWduZWQgc2hvcnQgYTIs CisgICAgIHVuc2lnbmVkIHNob3J0IGEzLCB1bnNpZ25lZCBzaG9ydCBhNCwg dW5zaWduZWQgc2hvcnQgYTUsCisgICAgIHVuc2lnbmVkIHNob3J0IGE2LCB1 bnNpZ25lZCBzaG9ydCBhNywgdW5zaWduZWQgc2hvcnQgYTgpCit7CisgIGlu dCBpOworICBmb3IgKGkgPSAwOyBpIDwgMTI4OyBpKyspCisgICAgeworICAg ICAgb3V0MltpICogNF0gPSBhMCArIDg7CisgICAgfQorICBmb3IgKGkgPSAw OyBpIDwgMTI4OyBpKyspCisgICAgeworICAgICAgYjAgPSBhMCArIDg7Cisg ICAgICBiMSA9IGExICsgNzsKKyAgICAgIGIyID0gYTIgKyA2OworICAgICAg YjMgPSBhMyArIDU7CisgICAgICBiNCA9IGE0ICsgNDsKKyAgICAgIGI1ID0g YTUgKyAzOworICAgICAgYjYgPSBhNiArIDI7CisgICAgICBiNyA9IGE3ICsg MTsKKyAgICAgIGI4ID0gYTggKyA5OworCisgICAgICBvdXQyW2kgKiA4XSA9 IGIwOworICAgICAgb3V0MltpICogOCArIDFdID0gYjE7CisgICAgICBvdXQy W2kgKiA4ICsgMl0gPSBiNDsKKyAgICAgIG91dDJbaSAqIDggKyAzXSA9IGI1 OworICAgICAgb3V0MltpICogOCArIDRdID0gYjY7CisgICAgICBvdXQyW2kg KiA4ICsgNV0gPSBiMjsKKyAgICAgIG91dDJbaSAqIDggKyA2XSA9IGI3Owor ICAgICAgb3V0MltpICogOCArIDddID0gYjg7CisgICAgfQorfQo= --------------040707000705050405030206--