http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48163

Eric Botcazou <ebotcazou at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ebotcazou at gcc dot gnu.org

--- Comment #7 from Eric Botcazou <ebotcazou at gcc dot gnu.org> ---
vt_add_function_parameter needs to be adjusted after the assign_parms change:

  if (!vt_get_decl_and_offset (incoming, &decl, &offset))
    {
      if (REG_P (incoming) || MEM_P (incoming))
    {
      /* This means argument is passed by invisible reference.  */
      offset = 0;
      decl = parm;
      incoming = gen_rtx_MEM (GET_MODE (decl_rtl), incoming);
    }
      else
    {
      if (!vt_get_decl_and_offset (decl_rtl, &decl, &offset))
        return;
      offset += byte_lowpart_offset (GET_MODE (incoming),
                     GET_MODE (decl_rtl));
    }
    }

This generates MEM of MEM incoming locations.

Reply via email to