[Bug target/124266] [10/11/12/13/14/15/16 Regression] Incorrect unwind info for vector math functions
rsandifo at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Mar 5 23:59:16 GMT 2026
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124266
--- Comment #8 from Richard Sandiford <rsandifo at gcc dot gnu.org> ---
(In reply to Richard Sandiford from comment #7)
> diff --git a/gcc/pair-fusion.cc b/gcc/pair-fusion.cc
> index 7aaf4fd6372..c5469993531 100644
> --- a/gcc/pair-fusion.cc
> +++ b/gcc/pair-fusion.cc
> @@ -1645,6 +1645,8 @@ pair_fusion_bb_info::fuse_pair (bool load_p,
> PATTERN (first->rtl ()),
> PATTERN (second->rtl ())
> };
> + bool frame_related_p = (RTX_FRAME_RELATED_P (first->rtl ())
> + || RTX_FRAME_RELATED_P (first->rtl ()));
Make that second->rtl () :) Shouldn't be doing this stuff so late :)
>
> // Make copies of the patterns as we might need to refer to the original
> RTL
> // later, for example when updating debug uses (which is after we've
> updated
> @@ -2027,6 +2029,8 @@ pair_fusion_bb_info::fuse_pair (bool load_p,
> for (auto uid : tombstone_uids)
> track_tombstone (uid);
>
> + RTX_FRAME_RELATED_P (pair_change->insn ()->rtl ()) = frame_related_p;
> +
> return true;
> }
More information about the Gcc-bugs
mailing list