> Ahh, you mean something like this?  (Fixes the testcase, but not
> properly tested yet.)

Yes, but I think you still need the regular treatment for these CALL_INSNs:

Index: postreload.c
===================================================================
--- postreload.c        (revision 166701)
+++ postreload.c        (working copy)
@@ -1354,8 +1354,8 @@ reload_combine (void)
             }

        }
-      else if (JUMP_P (insn)
-              && GET_CODE (PATTERN (insn)) != RETURN)
+
+      if (control_flow_insn_p (insn) && GET_CODE (PATTERN (insn)) != RETURN)
        {
          /* Non-spill registers might be used at the call destination in
             some unknown fashion, so we have to mark the unknown use.  */


-- 
Eric Botcazou

Reply via email to