> i spoted failing execution tests that expected to pass, > it turns out change_cfi_row() needs something like > > - if (!old_row->window_save && new_row->window_save) > + if (old_row->window_save != new_row->window_save) > > to generate .cfi_window_save that correctly tracks the > toggled state on aarch64, but i assume sparc wants > something else, i added Eric to CC he might know what's > right for the old&&!new case on sparc, any help is > welcome, the logic was added in > > commit dfe1fe91dbc7f068bb3efcee40237caacc0c53ae
Yes, you cannot really "toggle" a register window on SPARC. > i can imagine adding a new bool flag in dw_cfi_row > for aarch64 or making the logic target specific > (depending on if the target uses REG_CFA_WINDOW_SAVE > or REG_CFA_TOGGLE_RA_MANGLE for cfi_window_save) Yes, please do not hijack again the SPARC logic here. -- Eric Botcazou