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 F24A23851168 for ; Thu, 20 Oct 2022 13:58:15 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org F24A23851168 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 BAD3EED1; Thu, 20 Oct 2022 06:58:21 -0700 (PDT) Received: from [10.57.4.196] (unknown [10.57.4.196]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id E21323F67D; Thu, 20 Oct 2022 06:58:14 -0700 (PDT) Content-Type: multipart/mixed; boundary="------------jrXX691gerUFwF9EexaEXe2e" Message-ID: Date: Thu, 20 Oct 2022 14:58:09 +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 Biener , Richard Sandiford From: "Andre Vieira (lists)" Subject: [PATCH]vect: Fix vectype when widening container type in bitfield pattern [PR107326] X-Spam-Status: No, score=-19.8 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. --------------jrXX691gerUFwF9EexaEXe2e Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi, The 'vect_recog_bitfield_ref_pattern' was not correctly adapting the vectype when widening the container. I thought the original tests covered that code-path but they didn't, so I added a new run-test that covers it too. Bootstrapped and regression tested on x86_64 and aarch64. gcc/ChangeLog:     PR tree-optimization/107326     * tree-vect-patterns.cc (vect_recog_bitfield_ref_pattern): Change     vectype when widening container. gcc/testsuite/ChangeLog:     * gcc.dg/vect/pr107326.c: New test.     * gcc.dg/vect/vect-bitfield-read-7.c --------------jrXX691gerUFwF9EexaEXe2e Content-Type: text/plain; charset=UTF-8; name="pr107326.patch" Content-Disposition: attachment; filename="pr107326.patch" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLmRnL3ZlY3QvcHIxMDczMjYuYyBiL2dj Yy90ZXN0c3VpdGUvZ2NjLmRnL3ZlY3QvcHIxMDczMjYuYwpuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zMzNh NTE1ZTc0MTBhNWIyNTdhOWYyMjViNTZiMTRiNjE5YWYzMTE4Ci0tLSAvZGV2L251bGwKKysr IGIvZ2NjL3Rlc3RzdWl0ZS9nY2MuZGcvdmVjdC9wcjEwNzMyNi5jCkBAIC0wLDAgKzEsMjQg QEAKKy8qIFBSMTA3MzI2ICovCisvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLworc3RydWN0IEdz eW10YWIgeworICB1bnNpZ25lZCBpbnQgOiA4OworICB1bnNpZ25lZCBpbnQgdmlzaXRlZF9z b21ld2hlcmUgOiAxOworfTsKKworZXh0ZXJuIHN0cnVjdCBHc3ltdGFiIGdsb2Jfc3ltdGFi W107CisKK2ludAordmlzaXRfY2hpbGRyZW4gKGludCBpKQoreworICBpbnQgbnVtdmlzaXRl ZCA9IDA7CisKKyAgd2hpbGUgKGkgPCAxKQorICAgIHsKKyAgICAgIGlmIChnbG9iX3N5bXRh YltpXS52aXNpdGVkX3NvbWV3aGVyZSkKKyAgICAgICAgKytudW12aXNpdGVkOworCisgICAg ICArK2k7CisgICAgfQorCisgIHJldHVybiBudW12aXNpdGVkOworfQpkaWZmIC0tZ2l0IGEv Z2NjL3Rlc3RzdWl0ZS9nY2MuZGcvdmVjdC92ZWN0LWJpdGZpZWxkLXJlYWQtNy5jIGIvZ2Nj L3Rlc3RzdWl0ZS9nY2MuZGcvdmVjdC92ZWN0LWJpdGZpZWxkLXJlYWQtNy5jCm5ldyBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAuLjNiNTA1ZGIyYmQzZWI2OTM4ZDJmM2I2Zjc0MjY3NjUzMzNjMjcxYTQKLS0tIC9k ZXYvbnVsbAorKysgYi9nY2MvdGVzdHN1aXRlL2djYy5kZy92ZWN0L3ZlY3QtYml0ZmllbGQt cmVhZC03LmMKQEAgLTAsMCArMSw0MyBAQAorLyogeyBkZy1yZXF1aXJlLWVmZmVjdGl2ZS10 YXJnZXQgdmVjdF9pbnQgfSAqLworCisjaW5jbHVkZSA8c3RkYXJnLmg+CisjaW5jbHVkZSAi dHJlZS12ZWN0LmgiCisKK2V4dGVybiB2b2lkIGFib3J0KHZvaWQpOworCitzdHJ1Y3QgcyB7 CisgICAgdW5zaWduZWQgaSA6IDg7CisgICAgY2hhciBhIDogNDsKK307CisKKyNkZWZpbmUg TiAzMgorI2RlZmluZSBFTFQwIHsweEZVTCwgMH0KKyNkZWZpbmUgRUxUMSB7MHhGVUwsIDF9 CisjZGVmaW5lIEVMVDIgezB4RlVMLCAyfQorI2RlZmluZSBFTFQzIHsweEZVTCwgM30KKyNk ZWZpbmUgUkVTIDQ4CitzdHJ1Y3QgcyBBW05dCisgID0geyBFTFQwLCBFTFQxLCBFTFQyLCBF TFQzLCBFTFQwLCBFTFQxLCBFTFQyLCBFTFQzLAorICAgICAgRUxUMCwgRUxUMSwgRUxUMiwg RUxUMywgRUxUMCwgRUxUMSwgRUxUMiwgRUxUMywKKyAgICAgIEVMVDAsIEVMVDEsIEVMVDIs IEVMVDMsIEVMVDAsIEVMVDEsIEVMVDIsIEVMVDMsCisgICAgICBFTFQwLCBFTFQxLCBFTFQy LCBFTFQzLCBFTFQwLCBFTFQxLCBFTFQyLCBFTFQzfTsKKworaW50IF9fYXR0cmlidXRlX18g KChub2lwYSkpCitmKHN0cnVjdCBzICpwdHIsIHVuc2lnbmVkIG4pIHsKKyAgICBpbnQgcmVz ID0gMDsKKyAgICBmb3IgKGludCBpID0gMDsgaSA8IG47ICsraSkKKyAgICAgIHJlcyArPSBw dHJbaV0uYTsKKyAgICByZXR1cm4gcmVzOworfQorCitpbnQgbWFpbiAodm9pZCkKK3sKKyAg Y2hlY2tfdmVjdCAoKTsKKworICBpZiAoZigmQVswXSwgTikgIT0gUkVTKQorICAgIGFib3J0 ICgpOworCisgIHJldHVybiAwOworfQorCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1 bXAtdGltZXMgInZlY3Rvcml6ZWQgMSBsb29wcyIgMSAidmVjdCIgfSB9ICovCmRpZmYgLS1n aXQgYS9nY2MvdHJlZS12ZWN0LXBhdHRlcm5zLmNjIGIvZ2NjL3RyZWUtdmVjdC1wYXR0ZXJu cy5jYwppbmRleCA2YWZkNTdhNTBjNGJjYjVhZWM3Y2NjYTZlNWRjMDY5Y2FhNGE1YTMwLi4y NDY3M2Y4ZDRkOTJlMzQ3MDZmYTZjNGVkMmNmMmVkODVkNmJiNTE3IDEwMDY0NAotLS0gYS9n Y2MvdHJlZS12ZWN0LXBhdHRlcm5zLmNjCisrKyBiL2djYy90cmVlLXZlY3QtcGF0dGVybnMu Y2MKQEAgLTE5MjIsNyArMTkyMiw4IEBAIHZlY3RfcmVjb2dfYml0ZmllbGRfcmVmX3BhdHRl cm4gKHZlY19pbmZvICp2aW5mbywgc3RtdF92ZWNfaW5mbyBzdG10X2luZm8sCiAgIHRyZWUg cmV0ID0gZ2ltcGxlX2Fzc2lnbl9saHMgKGZpcnN0X3N0bXQpOwogICB0cmVlIHJldF90eXBl ID0gVFJFRV9UWVBFIChyZXQpOwogICBib29sIHNoaWZ0X2ZpcnN0ID0gdHJ1ZTsKLSAgdHJl ZSB2ZWN0eXBlID0gZ2V0X3ZlY3R5cGVfZm9yX3NjYWxhcl90eXBlICh2aW5mbywgVFJFRV9U WVBFIChjb250YWluZXIpKTsKKyAgdHJlZSBjb250YWluZXJfdHlwZSA9IFRSRUVfVFlQRSAo Y29udGFpbmVyKTsKKyAgdHJlZSB2ZWN0eXBlID0gZ2V0X3ZlY3R5cGVfZm9yX3NjYWxhcl90 eXBlICh2aW5mbywgY29udGFpbmVyX3R5cGUpOwogCiAgIC8qIFdlIG1vdmUgdGhlIGNvbnZl cnNpb24gZWFybGllciBpZiB0aGUgbG9hZGVkIHR5cGUgaXMgc21hbGxlciB0aGFuIHRoZQog ICAgICByZXR1cm4gdHlwZSB0byBlbmFibGUgdGhlIHVzZSBvZiB3aWRlbmluZyBsb2Fkcy4g ICovCkBAIC0xOTMzLDE1ICsxOTM0LDE1IEBAIHZlY3RfcmVjb2dfYml0ZmllbGRfcmVmX3Bh dHRlcm4gKHZlY19pbmZvICp2aW5mbywgc3RtdF92ZWNfaW5mbyBzdG10X2luZm8sCiAJPSBn aW1wbGVfYnVpbGRfYXNzaWduICh2ZWN0X3JlY29nX3RlbXBfc3NhX3ZhciAocmV0X3R5cGUp LAogCQkJICAgICAgIE5PUF9FWFBSLCBjb250YWluZXIpOwogICAgICAgY29udGFpbmVyID0g Z2ltcGxlX2dldF9saHMgKHBhdHRlcm5fc3RtdCk7Ci0gICAgICBhcHBlbmRfcGF0dGVybl9k ZWZfc2VxICh2aW5mbywgc3RtdF9pbmZvLCBwYXR0ZXJuX3N0bXQpOworICAgICAgY29udGFp bmVyX3R5cGUgPSBUUkVFX1RZUEUgKGNvbnRhaW5lcik7CisgICAgICB2ZWN0eXBlID0gZ2V0 X3ZlY3R5cGVfZm9yX3NjYWxhcl90eXBlICh2aW5mbywgY29udGFpbmVyX3R5cGUpOworICAg ICAgYXBwZW5kX3BhdHRlcm5fZGVmX3NlcSAodmluZm8sIHN0bXRfaW5mbywgcGF0dGVybl9z dG10LCB2ZWN0eXBlKTsKICAgICB9CiAgIGVsc2UgaWYgKCF1c2VsZXNzX3R5cGVfY29udmVy c2lvbl9wIChUUkVFX1RZUEUgKGNvbnRhaW5lciksIHJldF90eXBlKSkKICAgICAvKiBJZiB3 ZSBhcmUgZG9pbmcgdGhlIGNvbnZlcnNpb24gbGFzdCB0aGVuIGFsc28gZGVsYXkgdGhlIHNo aWZ0IGFzIHdlIG1heQogICAgICAgIGJlIGFibGUgdG8gY29tYmluZSB0aGUgc2hpZnQgYW5k IGNvbnZlcnNpb24gaW4gY2VydGFpbiBjYXNlcy4gICovCiAgICAgc2hpZnRfZmlyc3QgPSBm YWxzZTsKIAotICB0cmVlIGNvbnRhaW5lcl90eXBlID0gVFJFRV9UWVBFIChjb250YWluZXIp OwotCiAgIC8qIElmIHRoZSBvbmx5IHVzZSBvZiB0aGUgcmVzdWx0IG9mIHRoaXMgQklUX0ZJ RUxEX1JFRiArIENPTlZFUlQgaXMgYQogICAgICBQTFVTX0VYUFIgdGhlbiBkbyB0aGUgc2hp ZnQgbGFzdCBhcyBzb21lIHRhcmdldHMgY2FuIGNvbWJpbmUgdGhlIHNoaWZ0IGFuZAogICAg ICBhZGQgaW50byBhIHNpbmdsZSBpbnN0cnVjdGlvbi4gICovCg== --------------jrXX691gerUFwF9EexaEXe2e--