Honza,

in calls.c:expand_call, I see the following code:
...
#ifdef REG_PARM_STACK_SPACE
      /* If outgoing reg parm stack space changes, we can not do sibcall.  */
      || (OUTGOING_REG_PARM_STACK_SPACE (funtype)
          != OUTGOING_REG_PARM_STACK_SPACE (TREE_TYPE (current_function_decl)))
      || (reg_parm_stack_space != REG_PARM_STACK_SPACE (fndecl))
#endif
...

I don't understand the last line. reg_parm_stack_space is initialized like this:
...
  reg_parm_stack_space = REG_PARM_STACK_SPACE (!fndecl ? fntype : fndecl);
...

Was this meant perhaps?
...
      || (reg_parm_stack_space != REG_PARM_STACK_SPACE (current_function_decl))
...

Thanks,
- Tom

Reply via email to