From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by sourceware.org (Postfix) with ESMTP id 19DA83858D38 for ; Wed, 12 Oct 2022 17:29:16 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 19DA83858D38 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=arm.com Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id C17BA165C; Wed, 12 Oct 2022 10:29:21 -0700 (PDT) Received: from [10.57.1.129] (unknown [10.57.1.129]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id EE7263F766; Wed, 12 Oct 2022 10:29:14 -0700 (PDT) Content-Type: multipart/mixed; boundary="------------fJm0cLPiTWVHUP5MZO87FYxe" Message-ID: Date: Wed, 12 Oct 2022 18:29:07 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.3.0 Content-Language: en-US To: "gcc-patches@gcc.gnu.org" Cc: Richard Sandiford , Richard Biener From: "Andre Vieira (lists)" Subject: ifcvt: Fix bitpos calculation in bitfield lowering [PR107229] X-Spam-Status: No, score=-20.6 required=5.0 tests=BAYES_00,GIT_PATCH_0,KAM_DMARC_NONE,KAM_DMARC_STATUS,KAM_LAZY_DOMAIN_SECURITY,KAM_LOTSOFHASH,RCVD_IN_DNSWL_LOW,SPF_HELO_NONE,SPF_NONE,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: This is a multi-part message in MIME format. --------------fJm0cLPiTWVHUP5MZO87FYxe Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi, The bitposition calculation for the bitfield lowering in loop if conversion was not taking DECL_FIELD_OFFSET into account, which meant that it would result in wrong bitpositions for bitfields that did not end up having representations starting at the beginning of the struct. Bootstrappend and regression tested on aarch64-none-linux-gnu and x86_64-pc-linux-gnu. gcc/ChangeLog:     PR tree-optimization/107229     * gcc/tree-if-conv.cc (get_bitfield_rep): Fix bitposition calculation. gcc/testsuite/ChangeLog:     * gcc.dg/vect/pr107229-1.c: New test.     * gcc.dg/vect/pr107229-2.c: New test.     * gcc.dg/vect/pr107229-3.c: New test. --------------fJm0cLPiTWVHUP5MZO87FYxe Content-Type: text/plain; charset=UTF-8; name="PR107229.patch" Content-Disposition: attachment; filename="PR107229.patch" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLmRnL3ZlY3QvcHIxMDcyMjktMS5jIGIv Z2NjL3Rlc3RzdWl0ZS9nY2MuZGcvdmVjdC9wcjEwNzIyOS0xLmMKbmV3IGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u NjdiNDMyMzgzZDA1N2E2MzA3NDZhYTAwYWY1MGMyNWZjYjUyN2Q4ZQotLS0gL2Rldi9udWxs CisrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLmRnL3ZlY3QvcHIxMDcyMjktMS5jCkBAIC0wLDAg KzEsMTYgQEAKKy8qIHsgZGctZG8gY29tcGlsZSB9ICovCisvKiBQUiB0cmVlLW9wdGltaXph dGlvbi8xMDcyMjkuICAqLworCitpbnQgYSwgYzsKK3N0cnVjdCB7CisgIGxvbmcgZDsKKyAg aW50IDogODsKKyAgaW50IDogMjc7CisgIGludCBlIDogMjE7Cit9IGY7Cit2b2lkIGcoaW50 IGIpIHsgYSA9IGEgJiAxOyB9CitpbnQgbWFpbigpIHsKKyAgd2hpbGUgKGMpCisgICAgZyhm LmUpOworICByZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLmRn L3ZlY3QvcHIxMDcyMjktMi5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MuZGcvdmVjdC9wcjEwNzIy OS0yLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMC4uODhiZmZiNjNkNWU4YjJkN2JjZGVhZTIyM2Y0ZWM2ZWE0 ZjYxMWJjOQotLS0gL2Rldi9udWxsCisrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLmRnL3ZlY3Qv cHIxMDcyMjktMi5jCkBAIC0wLDAgKzEsMTggQEAKKy8qIHsgZGctZG8gY29tcGlsZSB9ICov CisvKiBQUiB0cmVlLW9wdGltaXphdGlvbi8xMDcyMjkuICAqLworCitpbnQgYSwgYzsKK3N0 cnVjdCB7CisgIGxvbmcgZjsKKyAgbG9uZyBnOworICBsb25nIGQ7CisgIGludCA6IDg7Cisg IGludCA6IDI3OworICBpbnQgZSA6IDIxOworfSBmOwordm9pZCBnKGludCBiKSB7IGEgPSBh ICYgMTsgfQoraW50IG1haW4oKSB7CisgIHdoaWxlIChjKQorICAgIGcoZi5lKTsKKyAgcmV0 dXJuIDA7Cit9CmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy5kZy92ZWN0L3ByMTA3 MjI5LTMuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLmRnL3ZlY3QvcHIxMDcyMjktMy5jCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAuLjRhYmQ4YzE0NTMxYjQwZTlkYmU5ODAyYThmOWEwZWFiYmE2NzNjOWYKLS0t IC9kZXYvbnVsbAorKysgYi9nY2MvdGVzdHN1aXRlL2djYy5kZy92ZWN0L3ByMTA3MjI5LTMu YwpAQCAtMCwwICsxLDE5IEBACisvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLworLyogUFIgdHJl ZS1vcHRpbWl6YXRpb24vMTA3MjI5LiAgKi8KKworaW50IGEsIGM7CitzdHJ1Y3QgeworICBs b25nIGY7CisgIGxvbmcgZzsKKyAgbG9uZyBkOworICBpbnQgOiA4OworICBpbnQgOiAzMjsK KyAgaW50IDogMjsKKyAgaW50IGUgOiAyMTsKK30gZjsKK3ZvaWQgZyhpbnQgYikgeyBhID0g YSAmIDE7IH0KK2ludCBtYWluKCkgeworICB3aGlsZSAoYykKKyAgICBnKGYuZSk7CisgIHJl dHVybiAwOworfQpkaWZmIC0tZ2l0IGEvZ2NjL3RyZWUtaWYtY29udi5jYyBiL2djYy90cmVl LWlmLWNvbnYuY2MKaW5kZXggZTQ2OGE0NjU5ZmEyOGEzYTMxYzMzOTBjZjE5YmVlNjVmNDU5 MGI4MC4uMzMxNjBkZGVmODBjYmQ3NWMyYTkyN2ZiNTBiZGRkNzkyYmJmNWRkNCAxMDA2NDQK LS0tIGEvZ2NjL3RyZWUtaWYtY29udi5jYworKysgYi9nY2MvdHJlZS1pZi1jb252LmNjCkBA IC0zMjk4LDEwICszMjk4LDIwIEBAIGdldF9iaXRmaWVsZF9yZXAgKGdhc3NpZ24gKnN0bXQs IGJvb2wgd3JpdGUsIHRyZWUgKmJpdHBvcywKICAgICAqc3RydWN0X2V4cHIgPSBUUkVFX09Q RVJBTkQgKGNvbXBfcmVmLCAwKTsKIAogICBpZiAoYml0cG9zKQotICAgICpiaXRwb3MKLSAg ICAgID0gZm9sZF9idWlsZDIgKE1JTlVTX0VYUFIsIGJpdHNpemV0eXBlLAotCQkgICAgIERF Q0xfRklFTERfQklUX09GRlNFVCAoZmllbGRfZGVjbCksCi0JCSAgICAgREVDTF9GSUVMRF9C SVRfT0ZGU0VUIChyZXBfZGVjbCkpOworICAgIHsKKyAgICAgIHRyZWUgYmZfcG9zID0gZm9s ZF9idWlsZDIgKE1VTFRfRVhQUiwgYml0c2l6ZXR5cGUsCisJCQkJIERFQ0xfRklFTERfT0ZG U0VUIChmaWVsZF9kZWNsKSwKKwkJCQkgYnVpbGRfaW50X2NzdCAoYml0c2l6ZXR5cGUsIDgp KTsKKyAgICAgIGJmX3BvcyA9IGZvbGRfYnVpbGQyIChQTFVTX0VYUFIsIGJpdHNpemV0eXBl LCBiZl9wb3MsCisJCQkgICAgREVDTF9GSUVMRF9CSVRfT0ZGU0VUIChmaWVsZF9kZWNsKSk7 CisgICAgICB0cmVlIHJlcF9wb3MgPSBmb2xkX2J1aWxkMiAoTVVMVF9FWFBSLCBiaXRzaXpl dHlwZSwKKwkJCQkgIERFQ0xfRklFTERfT0ZGU0VUIChyZXBfZGVjbCksCisJCQkJICBidWls ZF9pbnRfY3N0IChiaXRzaXpldHlwZSwgOCkpOworICAgICAgcmVwX3BvcyA9IGZvbGRfYnVp bGQyIChQTFVTX0VYUFIsIGJpdHNpemV0eXBlLCByZXBfcG9zLAorCQkJICAgICBERUNMX0ZJ RUxEX0JJVF9PRkZTRVQgKHJlcF9kZWNsKSk7CisKKyAgICAgICpiaXRwb3MgPSBmb2xkX2J1 aWxkMiAoTUlOVVNfRVhQUiwgYml0c2l6ZXR5cGUsIGJmX3BvcywgcmVwX3Bvcyk7CisgICAg fQogCiAgIHJldHVybiByZXBfZGVjbDsKIAo= --------------fJm0cLPiTWVHUP5MZO87FYxe--