On Wed, Jun 15, 2011 at 7:11 AM, Michael Matz <m...@suse.de> wrote: > Hi, > > On Sat, 11 Jun 2011, H.J. Lu wrote: > >> We are very inconsistent when saving and restoring non-local goto save >> area. See: >> >> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48016 >> >> for detailed analysis. OK for trunk? >> + /* FIXME: update_nonlocal_goto_save_area may pass SA in the wrong mode. >> */ >> + if (GET_MODE (sa) != mode) >> + { >> + gcc_assert (ptr_mode != Pmode >> + && GET_MODE (sa) == ptr_mode >> + && mode == Pmode); >> + sa = adjust_address (sa, mode, 0); >> + } > > That may be appropriate for a branch, but trunk shouldn't contain FIXMEs > that explain how something should be fixed, instead that something should > be carried out. I.e. just fix update_nonlocal_goto_save_area. >
I don't know update_nonlocal_goto_save_area enough to fix it without breaking other targets. This patch is the lest invasive. Any suggestions how to properly fix it is appreciated. Thanks. -- H.J.