https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101195
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Assignee|unassigned at gcc dot gnu.org |jakub at gcc dot gnu.org --- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Created attachment 57249 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=57249&action=edit gcc14-pr101195.patch Initially I thought we should emit some error message, like that the argument must be non-negative constant, but given the iwhich = EH_RETURN_DATA_REGNO (iwhich); if (iwhich == INVALID_REGNUM) return constm1_rtx; a few lines later where it will on pretty much all architectures return INVALID_REGNUM for all but 2-4 values and so silently expand to -1 at runtime I think silently expanding the negative values to that as well is just fine. There is no fundamental difference between -1, -42, 42 or 237 in this regard, all of them most likely aren't eh regnos.