From: Richard Biener Date: Tue, 5 Dec 2023 12:56:10 +0000 (+0100) Subject: ipa/92606 - IPA ICF merging variables in different address-space X-Git-Tag: basepoints/gcc-15~3956 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1e6c4aa47972d6b56225e7776f3cf41f2cc01da2;p=thirdparty%2Fgcc.git ipa/92606 - IPA ICF merging variables in different address-space The following aovids merging variables that are put in different address-spaces. PR ipa/92606 * ipa-icf.cc (sem_variable::equals_wpa): Compare address-spaces. --- diff --git a/gcc/ipa-icf.cc b/gcc/ipa-icf.cc index c72c9d57a809..81232d5706e1 100644 --- a/gcc/ipa-icf.cc +++ b/gcc/ipa-icf.cc @@ -1666,6 +1666,10 @@ sem_variable::equals_wpa (sem_item *item, if (DECL_IN_TEXT_SECTION (decl) != DECL_IN_TEXT_SECTION (item->decl)) return return_false_with_msg ("text section"); + if (TYPE_ADDR_SPACE (TREE_TYPE (decl)) + != TYPE_ADDR_SPACE (TREE_TYPE (item->decl))) + return return_false_with_msg ("address-space"); + ipa_ref *ref = NULL, *ref2 = NULL; for (unsigned i = 0; node->iterate_reference (i, ref); i++) {