https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109179
--- Comment #16 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Can't you move all the tests that don't need id or static_id (all but one) before the lra_insn_recog_data_t id = lra_get_insn_recog_data (to); struct lra_static_insn_data *static_id = id->insn_static_data; instead? Ok, single_set is also a call, so maybe keep that one too? I know, microoptimizations...