From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by sourceware.org (Postfix) with ESMTPS id 82C433858C50 for ; Fri, 10 Feb 2023 00:01:34 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 82C433858C50 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=redhat.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675987294; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type; bh=9ZJ9PFYbBNf8WceK9QCILllcjwKLowDv7cFXXQyuyac=; b=foIPnP4Uno0BRjp9/m+SF4LCJGf2dCq16r7+B8gDjg6WDxFaQNG1ifLUxNqWuiNiuxvJYK hQeZCOu1m+T9oB6L4/Tdwp2NFH6EcXlVxpBQPJtx+HNL9PXdTsPY8Nxy8uBbI0HQwxYDK1 Wtnhn4QCGIRgqzeerv2vWmROU34ARw8= Received: from mail-qv1-f70.google.com (mail-qv1-f70.google.com [209.85.219.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-576-lDaScEcqOLqZZ7fOSQhtMg-1; Thu, 09 Feb 2023 19:01:32 -0500 X-MC-Unique: lDaScEcqOLqZZ7fOSQhtMg-1 Received: by mail-qv1-f70.google.com with SMTP id e5-20020a056214110500b0053547681552so2200287qvs.8 for ; Thu, 09 Feb 2023 16:01:32 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-language:cc:to:subject:from:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=eT68mvbRfqY6ie2gaDlAMoeHd8XMBlWr4SWbywzxuIE=; b=A2K1Sw5D4NDFRqBc3FiLyLUBt28ASEWOciGSbfiDSZwnh8wQJtI8DBRA9AsneYaerg pA+C+dnKneWl3RNxi2BVeiGYxLc1Ah6cYOekx5loZM7ZhYlxTqb7WpnoGefXloJJi60Z 8B/+ivIgycm7UsabvRmakwqptGvjFSLZwD+Kwwr/PPAQO6juE49xL/t3VlWayPEb4fUL aW7CvAbKvjTCxO78VsEg1q8Emc86M8lHlzF+ZgwiB0Kr9zfeyZAr6eN2baZKOb64GEv9 N5P8q7kY67ktGbx0+cb5f/KKiIER6RVLEMm+hBRe4bbRDFd60EFudZ3TlDGIBVz5EZhw ZTwQ== X-Gm-Message-State: AO0yUKWzR6HM+PtFTu4ev+mQY3gm7DJLXlBTrOqig7XGf6hZPgtWkva/ bcmtH7txFpTA50+v8Oku+16RmipsLPbhjaiD2hNt+FOfYCwl1eIqqmoQM8/fyKao0Uyihs8/BCl JCref1ilIMT+WD+YwtmGsp4Tv1tzJYoUS+l6ci8WNYNvQ5MUCkMTK6wC9sViJuLYcGbnoChNPxn A= X-Received: by 2002:a05:622a:309:b0:3ba:1641:5a49 with SMTP id q9-20020a05622a030900b003ba16415a49mr22713483qtw.8.1675987291083; Thu, 09 Feb 2023 16:01:31 -0800 (PST) X-Google-Smtp-Source: AK7set/Mb/ae6cAMhKDXLSX7kq0OgZC7V5QltdAaF8E+fVQTR/DZJqG3AKB+aZgrct5B2oSjiLgMyw== X-Received: by 2002:a05:622a:309:b0:3ba:1641:5a49 with SMTP id q9-20020a05622a030900b003ba16415a49mr22713442qtw.8.1675987290758; Thu, 09 Feb 2023 16:01:30 -0800 (PST) Received: from ?IPV6:2607:fea8:a263:f600::de2a? ([2607:fea8:a263:f600::de2a]) by smtp.gmail.com with ESMTPSA id t19-20020ac85313000000b003b9f1b7895asm2302407qtn.10.2023.02.09.16.01.29 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 09 Feb 2023 16:01:30 -0800 (PST) Message-ID: <5f8a85e0-71a3-0394-6f1a-18633cd6c71a@redhat.com> Date: Thu, 9 Feb 2023 19:01:28 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.6.0 From: Andrew MacLeod Subject: [PATCH] PR tree-optimization/108520 - Add function context for querying global ranges. To: gcc-patches Cc: "hernandez, aldy" , Jakub Jelinek X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: multipart/mixed; boundary="------------0G3ovqcCoCLxX57Ov3Ezyfv1" Content-Language: en-US X-Spam-Status: No, score=-12.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,KAM_SHORT,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,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. --------------0G3ovqcCoCLxX57Ov3Ezyfv1 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit I was about to ping on this, and then found it in my drafts.. Doh! get_range_global() can invoke tree.cc::nonnull_arg_p() if the item being queried is a pointer and a parameter.  This routine assumes the context is CFUN, and this is not always true. This patch simply adds a function context to the get_range_global query, and defaults it to cfun. If the context passed in is anything different than cfun, then it simply chooses not to invoke nonnull_arg_p(). The check_assume function now directly calls gimple_range_global with the correct function context instead of indirectly calling it through the global_range_query->range_of_expr () method. Thats all it should have been doing in the first place really since its always an ssa name. Bootstraps on x86_64-pc-linux-gnu with no regressions.  OK for trunk? Andrew --------------0G3ovqcCoCLxX57Ov3Ezyfv1 Content-Type: text/x-patch; charset=UTF-8; name="0001-Add-function-context-for-querying-global-ranges.patch" Content-Disposition: attachment; filename*0="0001-Add-function-context-for-querying-global-ranges.patch" Content-Transfer-Encoding: base64 RnJvbSBlNjRmMDRmMTVhNDdlZjkxYTIxNjY4MzE4NzI4YTQ5YTkwZThkYWUxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXcgTWFjTGVvZCA8YW1hY2xlb2RAcmVkaGF0LmNvbT4K RGF0ZTogTW9uLCA2IEZlYiAyMDIzIDEzOjA3OjAxIC0wNTAwClN1YmplY3Q6IFtQQVRDSF0gQWRk IGZ1bmN0aW9uIGNvbnRleHQgZm9yIHF1ZXJ5aW5nIGdsb2JhbCByYW5nZXMuCgpXaGVuIHByb2Nl c3NpbmcgYXJndW1lbnRzIGZvciBhc3N1bWUgZnVuY3Rpb25zLCBjYWxsIGdldF9nbG9iYWxfcmFu Z2UKZGlyZWN0bHkgYW5kIHV0aWxpemUgYSBmdW5jdGlvbiBjb250ZXh0IHBvaW50ZXIgdG8gYXZv aWQgYW55IGFzc3VtcHRpb25zCmFib3V0IHVzaW5nIGNmdW4uCgoJUFIgdHJlZS1vcHRpbWl6YXRp b24vMTA4NTIwCglnY2MvCgkqIGdpbXBsZS1yYW5nZS1pbmZlci5jYyAoY2hlY2tfYXNzdW1lX2Z1 bmMpOiBJbnZva2UKCWdpbXBsZV9yYW5nZV9nbG9iYWwgZGlyZWN0bHkgaW5zdGVhZCB1c2luZyBn bG9iYWxfcmFuZ2VfcXVlcnkuCgkqIHZhbHVlLXF1ZXJ5LmNjIChnZXRfcmFuZ2VfZ2xvYmFsKTog QWRkIGZ1bmN0aW9uIGNvbnRleHQgYW5kCglhdm9pZCBjYWxsaW5nIG5vbm51bGxfYXJnX3AgaWYg bm90IGNmdW4uCgkoZ2ltcGxlX3JhbmdlX2dsb2JhbCk6IEFkZCBmdW5jdGlvbiBjb250ZXh0IHBv aW50ZXIuCgkqIHZhbHVlLXF1ZXJ5LmggKGltcGxlX3JhbmdlX2dsb2JhbCk6IEFkZCBmdW5jdGlv biBjb250ZXh0LgoKCWdjYy90ZXN0c3VpdGUvCgkqIGcrKy5kZy9wcjEwODUyMC5DOiBOZXcuCi0t LQogZ2NjL2dpbXBsZS1yYW5nZS1pbmZlci5jYyAgICAgICB8ICAyICstCiBnY2MvdGVzdHN1aXRl L2crKy5kZy9wcjEwODUyMC5DIHwgMTcgKysrKysrKysrKysrKysrKysKIGdjYy92YWx1ZS1xdWVy eS5jYyAgICAgICAgICAgICAgfCAxMCArKysrKy0tLS0tCiBnY2MvdmFsdWUtcXVlcnkuaCAgICAg ICAgICAgICAgIHwgIDQgKysrLQogNCBmaWxlcyBjaGFuZ2VkLCAyNiBpbnNlcnRpb25zKCspLCA3 IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZysrLmRnL3By MTA4NTIwLkMKCmRpZmYgLS1naXQgYS9nY2MvZ2ltcGxlLXJhbmdlLWluZmVyLmNjIGIvZ2NjL2dp bXBsZS1yYW5nZS1pbmZlci5jYwppbmRleCA0Njc3YWUyMWNjYy4uYzc2NWUwNzI3MzEgMTAwNjQ0 Ci0tLSBhL2djYy9naW1wbGUtcmFuZ2UtaW5mZXIuY2MKKysrIGIvZ2NjL2dpbXBsZS1yYW5nZS1p bmZlci5jYwpAQCAtODQsNyArODQsNyBAQCBnaW1wbGVfaW5mZXJfcmFuZ2U6OmNoZWNrX2Fzc3Vt ZV9mdW5jIChnY2FsbCAqY2FsbCkKIAkgICAgY29udGludWU7CiAJICAvLyBRdWVyeSB0aGUgZ2xv YmFsIHJhbmdlIG9mIHRoZSBkZWZhdWx0IGRlZiBpbiB0aGUgYXNzdW1lIGZ1bmN0aW9uLgogCSAg VmFsdWVfUmFuZ2UgYXNzdW1lX3JhbmdlICh0eXBlKTsKLQkgIGdsb2JhbF9yYW5nZXMucmFuZ2Vf b2ZfZXhwciAoYXNzdW1lX3JhbmdlLCBkZWZhdWx0X2RlZik7CisJICBnaW1wbGVfcmFuZ2VfZ2xv YmFsIChhc3N1bWVfcmFuZ2UsIGRlZmF1bHRfZGVmLCBmdW4pOwogCSAgLy8gSWYgdGhlcmUgaXMg YSBub24tdmFyeWluZyByZXN1bHQsIGFkZCBpdCBhcyBhbiBpbmZlcnJlZCByYW5nZS4KIAkgIGlm ICghYXNzdW1lX3JhbmdlLnZhcnlpbmdfcCAoKSkKIAkgICAgewpkaWZmIC0tZ2l0IGEvZ2NjL3Rl c3RzdWl0ZS9nKysuZGcvcHIxMDg1MjAuQyBiL2djYy90ZXN0c3VpdGUvZysrLmRnL3ByMTA4NTIw LkMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjZjZDY3N2E4NTJkCi0t LSAvZGV2L251bGwKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nKysuZGcvcHIxMDg1MjAuQwpAQCAtMCww ICsxLDE3IEBACisvLyB7IGRnLWRvIGNvbXBpbGUgeyB0YXJnZXQgYysrMjMgfSB9CisvLyB7IGRn LW9wdGlvbnMgIi1PMiIgfQorCitzdGF0aWMgdm9pZCBmb28gKCkge30KK3N0cnVjdCBTIHsgdm9p ZCAoKmYpICgpOyB9OworCitbW2dudTo6bm9ubnVsbCAoMSldXQordm9pZAorYmFyICh2b2lkICp4 KQoreworICBzdHJ1Y3QgUyBhWzNdID0geyB7IGZvbyB9LCB7IGZvbyB9LCB7IGZvbyB9IH07Cisg IGZvciAoc3RydWN0IFMgKmkgPSBhLCAqZSA9IGEgKyAzOyBpICE9IGU7IGkrKykKKyAgICB7Cisg ICAgICBbW2Fzc3VtZSAoaS0+ZildXTsKKyAgICAgIGktPmYgKCk7CisgICAgfQorfQpkaWZmIC0t Z2l0IGEvZ2NjL3ZhbHVlLXF1ZXJ5LmNjIGIvZ2NjL3ZhbHVlLXF1ZXJ5LmNjCmluZGV4IDUzNDVi YjQ3NzE4Li5mOTM2ZTg3ODA4MCAxMDA2NDQKLS0tIGEvZ2NjL3ZhbHVlLXF1ZXJ5LmNjCisrKyBi L2djYy92YWx1ZS1xdWVyeS5jYwpAQCAtMzEyLDcgKzMxMiw3IEBAIGdldF9zc2FfbmFtZV9wdHJf aW5mb19ub25udWxsIChjb25zdF90cmVlIG5hbWUpCiAvLyByZXR1cm4gVkFSWUlORy4KIAogc3Rh dGljIHZvaWQKLWdldF9yYW5nZV9nbG9iYWwgKHZyYW5nZSAmciwgdHJlZSBuYW1lKQorZ2V0X3Jh bmdlX2dsb2JhbCAodnJhbmdlICZyLCB0cmVlIG5hbWUsIHN0cnVjdCBmdW5jdGlvbiAqZnVuID0g Y2Z1bikKIHsKICAgdHJlZSB0eXBlID0gVFJFRV9UWVBFIChuYW1lKTsKIApAQCAtMzI3LDcgKzMy Nyw3IEBAIGdldF9yYW5nZV9nbG9iYWwgKHZyYW5nZSAmciwgdHJlZSBuYW1lKQogCSAgLy8gYW50 aS1yYW5nZXMgZm9yIHBvaW50ZXJzLiAgTm90ZSB0aGF0IHRoaXMgaXMgb25seSB2YWxpZCB3aXRo CiAJICAvLyBkZWZhdWx0IGRlZmluaXRpb25zIG9mIFBBUk1fREVDTHMuCiAJICBpZiAoUE9JTlRF Ul9UWVBFX1AgKHR5cGUpCi0JICAgICAgJiYgKChjZnVuICYmIG5vbm51bGxfYXJnX3AgKHN5bSkp CisJICAgICAgJiYgKChjZnVuICYmIGZ1biA9PSBjZnVuICYmIG5vbm51bGxfYXJnX3AgKHN5bSkp CiAJCSAgfHwgZ2V0X3NzYV9uYW1lX3B0cl9pbmZvX25vbm51bGwgKG5hbWUpKSkKIAkgICAgci5z ZXRfbm9uemVybyAodHlwZSk7CiAJICBlbHNlIGlmICghUE9JTlRFUl9UWVBFX1AgKHR5cGUpKQpA QCAtMzc4LDE1ICszNzgsMTUgQEAgZ2V0X3JhbmdlX2dsb2JhbCAodnJhbmdlICZyLCB0cmVlIG5h bWUpCiAvLyBodHRwczovL2djYy5nbnUub3JnL3BpcGVybWFpbC9nY2MtcGF0Y2hlcy8yMDIxLUp1 bmUvNTcxNzA5Lmh0bWwKIAogdm9pZAotZ2ltcGxlX3JhbmdlX2dsb2JhbCAodnJhbmdlICZyLCB0 cmVlIG5hbWUpCitnaW1wbGVfcmFuZ2VfZ2xvYmFsICh2cmFuZ2UgJnIsIHRyZWUgbmFtZSwgc3Ry dWN0IGZ1bmN0aW9uICpmdW4pCiB7CiAgIHRyZWUgdHlwZSA9IFRSRUVfVFlQRSAobmFtZSk7CiAg IGdjY19jaGVja2luZ19hc3NlcnQgKFRSRUVfQ09ERSAobmFtZSkgPT0gU1NBX05BTUUpOwogCi0g IGlmIChTU0FfTkFNRV9JU19ERUZBVUxUX0RFRiAobmFtZSkgfHwgKGNmdW4gJiYgY2Z1bi0+YWZ0 ZXJfaW5saW5pbmcpCisgIGlmIChTU0FfTkFNRV9JU19ERUZBVUxUX0RFRiAobmFtZSkgfHwgKGZ1 biAmJiBmdW4tPmFmdGVyX2lubGluaW5nKQogICAgICAgfHwgaXNfYTxncGhpICo+IChTU0FfTkFN RV9ERUZfU1RNVCAobmFtZSkpKQogICAgIHsKLSAgICAgIGdldF9yYW5nZV9nbG9iYWwgKHIsIG5h bWUpOworICAgICAgZ2V0X3JhbmdlX2dsb2JhbCAociwgbmFtZSwgZnVuKTsKICAgICAgIHJldHVy bjsKICAgICB9CiAgIHIuc2V0X3ZhcnlpbmcgKHR5cGUpOwpkaWZmIC0tZ2l0IGEvZ2NjL3ZhbHVl LXF1ZXJ5LmggYi9nY2MvdmFsdWUtcXVlcnkuaAppbmRleCAwM2JlMGJlOTE3OC4uNjM4Nzg5Njgx MTggMTAwNjQ0Ci0tLSBhL2djYy92YWx1ZS1xdWVyeS5oCisrKyBiL2djYy92YWx1ZS1xdWVyeS5o CkBAIC0xNDMsNiArMTQzLDggQEAgZ2V0X3JhbmdlX3F1ZXJ5IChjb25zdCBzdHJ1Y3QgZnVuY3Rp b24gKmZ1bikKICAgcmV0dXJuIGZ1bi0+eF9yYW5nZV9xdWVyeSA/IGZ1bi0+eF9yYW5nZV9xdWVy eSA6ICZnbG9iYWxfcmFuZ2VzOwogfQogCi1leHRlcm4gdm9pZCBnaW1wbGVfcmFuZ2VfZ2xvYmFs ICh2cmFuZ2UgJnYsIHRyZWUgbmFtZSk7CisvLyBRdWVyeSB0aGUgZ2xvYmFsIHJhbmdlIG9mIE5B TUUgaW4gZnVuY3Rpb24gRi4gIERlZmF1bHQgdG8gY2Z1bi4KK2V4dGVybiB2b2lkIGdpbXBsZV9y YW5nZV9nbG9iYWwgKHZyYW5nZSAmdiwgdHJlZSBuYW1lLAorCQkJCSBzdHJ1Y3QgZnVuY3Rpb24g KmYgPSBjZnVuKTsKIAogI2VuZGlmIC8vIEdDQ19RVUVSWV9ICi0tIAoyLjM5LjAKCg== --------------0G3ovqcCoCLxX57Ov3Ezyfv1--