[RS6000] Remove constraints on call rounded_stack_size_rtx arg
authorAlan Modra <amodra@gmail.com>
Thu, 29 Nov 2018 04:46:21 +0000 (15:16 +1030)
committerAlan Modra <amodra@gcc.gnu.org>
Thu, 29 Nov 2018 04:46:21 +0000 (15:16 +1030)
This call arg is unused on rs6000.

* config/rs6000/darwin.md (call_indirect_nonlocal_darwin64),
(call_nonlocal_darwin64, call_value_indirect_nonlocal_darwin64),
(call_value_nonlocal_darwin64): Remove constraints from second call
arg, the rounded_stack_size_rtx arg.
* config/rs6000/rs6000.md (tls_gd_aix, tls_gd_sysv, tls_gd_call_aix),
(tls_gd_call_sysv, tls_ld_aix, tls_ld_sysv, tls_ld_call_aix),
(tls_ld_call_sysv, call_local32, call_local64, call_value_local32),
(call_value_local64, call_indirect_nonlocal_sysv),
(call_nonlocal_sysv, call_nonlocal_sysv_secure),
(call_value_indirect_nonlocal_sysv, call_value_nonlocal_sysv),
(call_value_nonlocal_sysv_secure, call_local_aix),
(call_value_local_aix, call_nonlocal_aix, call_value_nonlocal_aix),
(call_indirect_aix, call_value_indirect_aix, call_indirect_elfv2),
(call_value_indirect_elfv2, sibcall_local32, sibcall_local64),
(sibcall_value_local32, sibcall_value_local64, sibcall_aix),
(sibcall_value_aix): Likewise.

From-SVN: r266603

gcc/ChangeLog
gcc/config/rs6000/darwin.md
gcc/config/rs6000/rs6000.md

index 3c9c0b450e1c619db03715d0dba0e43c90bbfd7a..560fb9b29ead275ca39f9db630200d57bbd6586e 100644 (file)
@@ -1,3 +1,22 @@
+2018-11-29  Alan Modra  <amodra@gmail.com>
+
+       * config/rs6000/darwin.md (call_indirect_nonlocal_darwin64),
+       (call_nonlocal_darwin64, call_value_indirect_nonlocal_darwin64),
+       (call_value_nonlocal_darwin64): Remove constraints from second call
+       arg, the rounded_stack_size_rtx arg.
+       * config/rs6000/rs6000.md (tls_gd_aix, tls_gd_sysv, tls_gd_call_aix),
+       (tls_gd_call_sysv, tls_ld_aix, tls_ld_sysv, tls_ld_call_aix),
+       (tls_ld_call_sysv, call_local32, call_local64, call_value_local32),
+       (call_value_local64, call_indirect_nonlocal_sysv),
+       (call_nonlocal_sysv, call_nonlocal_sysv_secure),
+       (call_value_indirect_nonlocal_sysv, call_value_nonlocal_sysv),
+       (call_value_nonlocal_sysv_secure, call_local_aix),
+       (call_value_local_aix, call_nonlocal_aix, call_value_nonlocal_aix),
+       (call_indirect_aix, call_value_indirect_aix, call_indirect_elfv2),
+       (call_value_indirect_elfv2, sibcall_local32, sibcall_local64),
+       (sibcall_value_local32, sibcall_value_local64, sibcall_aix),
+       (sibcall_value_aix): Likewise.
+
 2018-11-29  Alan Modra  <amodra@gmail.com>
 
        * config/rs6000/rs6000.md (TLSmode): Delete mode iterator.  Replace
index 2d6d1ca57dd52b4f4233a2d6bc40f2837cda62cd..a1c07702d6ff1207041eef25ed4e705985081d18 100644 (file)
@@ -302,7 +302,7 @@ You should have received a copy of the GNU General Public License
 
 (define_insn "*call_indirect_nonlocal_darwin64"
   [(call (mem:SI (match_operand:DI 0 "register_operand" "c,*l,c,*l"))
-        (match_operand 1 "" "g,g,g,g"))
+        (match_operand 1))
    (use (match_operand:SI 2 "immediate_operand" "O,O,n,n"))
    (clobber (reg:SI LR_REGNO))]
   "DEFAULT_ABI == ABI_DARWIN && TARGET_64BIT"
@@ -314,7 +314,7 @@ You should have received a copy of the GNU General Public License
 
 (define_insn "*call_nonlocal_darwin64"
   [(call (mem:SI (match_operand:DI 0 "symbol_ref_operand" "s,s"))
-        (match_operand 1 "" "g,g"))
+        (match_operand 1))
    (use (match_operand:SI 2 "immediate_operand" "O,n"))
    (clobber (reg:SI LR_REGNO))]
   "(DEFAULT_ABI == ABI_DARWIN)
@@ -332,7 +332,7 @@ You should have received a copy of the GNU General Public License
 (define_insn "*call_value_indirect_nonlocal_darwin64"
   [(set (match_operand 0 "" "")
        (call (mem:SI (match_operand:DI 1 "register_operand" "c,*l,c,*l"))
-             (match_operand 2 "" "g,g,g,g")))
+             (match_operand 2)))
    (use (match_operand:SI 3 "immediate_operand" "O,O,n,n"))
    (clobber (reg:SI LR_REGNO))]
   "DEFAULT_ABI == ABI_DARWIN"
@@ -345,7 +345,7 @@ You should have received a copy of the GNU General Public License
 (define_insn "*call_value_nonlocal_darwin64"
   [(set (match_operand 0 "" "")
        (call (mem:SI (match_operand:DI 1 "symbol_ref_operand" "s,s"))
-             (match_operand 2 "" "g,g")))
+             (match_operand 2)))
    (use (match_operand:SI 3 "immediate_operand" "O,n"))
    (clobber (reg:SI LR_REGNO))]
   "(DEFAULT_ABI == ABI_DARWIN)
index 81914a99c904aa38839e565c8fa2b7b629375342..b223e0b266dddb9fd97caaa84cab64b0748be4b5 100644 (file)
 (define_insn_and_split "tls_gd_aix<bits>"
   [(set (match_operand:P 0 "gpc_reg_operand" "=b")
         (call (mem:SI (match_operand:P 3 "symbol_ref_operand" "s"))
-             (match_operand 4 "" "g")))
+             (match_operand 4)))
    (unspec:P [(match_operand:P 1 "gpc_reg_operand" "b")
              (match_operand:P 2 "rs6000_tls_symbol_ref" "")]
             UNSPEC_TLSGD)
 (define_insn_and_split "tls_gd_sysv<mode>"
   [(set (match_operand:P 0 "gpc_reg_operand" "=b")
         (call (mem:SI (match_operand:P 3 "symbol_ref_operand" "s"))
-             (match_operand 4 "" "g")))
+             (match_operand 4)))
    (unspec:P [(match_operand:P 1 "gpc_reg_operand" "b")
              (match_operand:P 2 "rs6000_tls_symbol_ref" "")]
             UNSPEC_TLSGD)
 (define_insn "*tls_gd_call_aix<bits>"
   [(set (match_operand:P 0 "gpc_reg_operand" "=b")
         (call (mem:SI (match_operand:P 1 "symbol_ref_operand" "s"))
-             (match_operand 2 "" "g")))
+             (match_operand 2)))
    (unspec:P [(match_operand:P 3 "rs6000_tls_symbol_ref" "")]
             UNSPEC_TLSGD)
    (clobber (reg:SI LR_REGNO))]
 (define_insn "*tls_gd_call_sysv<bits>"
   [(set (match_operand:P 0 "gpc_reg_operand" "=b")
         (call (mem:SI (match_operand:P 1 "symbol_ref_operand" "s"))
-             (match_operand 2 "" "g")))
+             (match_operand 2)))
    (unspec:P [(match_operand:P 3 "rs6000_tls_symbol_ref" "")]
             UNSPEC_TLSGD)
    (clobber (reg:SI LR_REGNO))]
 (define_insn_and_split "tls_ld_aix<bits>"
   [(set (match_operand:P 0 "gpc_reg_operand" "=b")
         (call (mem:SI (match_operand:P 2 "symbol_ref_operand" "s"))
-             (match_operand 3 "" "g")))
+             (match_operand 3)))
    (unspec:P [(match_operand:P 1 "gpc_reg_operand" "b")]
             UNSPEC_TLSLD)
    (clobber (reg:SI LR_REGNO))]
 (define_insn_and_split "tls_ld_sysv<mode>"
   [(set (match_operand:P 0 "gpc_reg_operand" "=b")
         (call (mem:SI (match_operand:P 2 "symbol_ref_operand" "s"))
-             (match_operand 3 "" "g")))
+             (match_operand 3)))
    (unspec:P [(match_operand:P 1 "gpc_reg_operand" "b")]
             UNSPEC_TLSLD)
    (clobber (reg:SI LR_REGNO))]
 (define_insn "*tls_ld_call_aix<bits>"
   [(set (match_operand:P 0 "gpc_reg_operand" "=b")
         (call (mem:SI (match_operand:P 1 "symbol_ref_operand" "s"))
-             (match_operand 2 "" "g")))
+             (match_operand 2)))
    (unspec:P [(const_int 0)] UNSPEC_TLSLD)
    (clobber (reg:SI LR_REGNO))]
   "HAVE_AS_TLS && TARGET_TLS_MARKERS
 (define_insn "*tls_ld_call_sysv<bits>"
   [(set (match_operand:P 0 "gpc_reg_operand" "=b")
         (call (mem:SI (match_operand:P 1 "symbol_ref_operand" "s"))
-             (match_operand 2 "" "g")))
+             (match_operand 2)))
    (unspec:P [(const_int 0)] UNSPEC_TLSLD)
    (clobber (reg:SI LR_REGNO))]
   "HAVE_AS_TLS && DEFAULT_ABI == ABI_V4 && TARGET_TLS_MARKERS"
 
 (define_insn "*call_local32"
   [(call (mem:SI (match_operand:SI 0 "current_file_function_operand" "s,s"))
-        (match_operand 1 "" "g,g"))
+        (match_operand 1))
    (use (match_operand:SI 2 "immediate_operand" "O,n"))
    (clobber (reg:SI LR_REGNO))]
   "(INTVAL (operands[2]) & CALL_LONG) == 0"
 
 (define_insn "*call_local64"
   [(call (mem:SI (match_operand:DI 0 "current_file_function_operand" "s,s"))
-        (match_operand 1 "" "g,g"))
+        (match_operand 1))
    (use (match_operand:SI 2 "immediate_operand" "O,n"))
    (clobber (reg:SI LR_REGNO))]
   "TARGET_64BIT && (INTVAL (operands[2]) & CALL_LONG) == 0"
 (define_insn "*call_value_local32"
   [(set (match_operand 0 "" "")
        (call (mem:SI (match_operand:SI 1 "current_file_function_operand" "s,s"))
-             (match_operand 2 "" "g,g")))
+             (match_operand 2)))
    (use (match_operand:SI 3 "immediate_operand" "O,n"))
    (clobber (reg:SI LR_REGNO))]
   "(INTVAL (operands[3]) & CALL_LONG) == 0"
 (define_insn "*call_value_local64"
   [(set (match_operand 0 "" "")
        (call (mem:SI (match_operand:DI 1 "current_file_function_operand" "s,s"))
-             (match_operand 2 "" "g,g")))
+             (match_operand 2)))
    (use (match_operand:SI 3 "immediate_operand" "O,n"))
    (clobber (reg:SI LR_REGNO))]
   "TARGET_64BIT && (INTVAL (operands[3]) & CALL_LONG) == 0"
 
 (define_insn "*call_indirect_nonlocal_sysv<mode>"
   [(call (mem:SI (match_operand:P 0 "register_operand" "c,*l,c,*l"))
-        (match_operand 1 "" "g,g,g,g"))
+        (match_operand 1))
    (use (match_operand:SI 2 "immediate_operand" "O,O,n,n"))
    (clobber (reg:SI LR_REGNO))]
   "DEFAULT_ABI == ABI_V4
 
 (define_insn_and_split "*call_nonlocal_sysv<mode>"
   [(call (mem:SI (match_operand:P 0 "symbol_ref_operand" "s,s"))
-        (match_operand 1 "" "g,g"))
+        (match_operand 1))
    (use (match_operand:SI 2 "immediate_operand" "O,n"))
    (clobber (reg:SI LR_REGNO))]
   "(DEFAULT_ABI == ABI_DARWIN
 
 (define_insn "*call_nonlocal_sysv_secure<mode>"
   [(call (mem:SI (match_operand:P 0 "symbol_ref_operand" "s,s"))
-        (match_operand 1 "" "g,g"))
+        (match_operand 1))
    (use (match_operand:SI 2 "immediate_operand" "O,n"))
    (use (match_operand:SI 3 "register_operand" "r,r"))
    (clobber (reg:SI LR_REGNO))]
 (define_insn "*call_value_indirect_nonlocal_sysv<mode>"
   [(set (match_operand 0 "" "")
        (call (mem:SI (match_operand:P 1 "register_operand" "c,*l,c,*l"))
-             (match_operand 2 "" "g,g,g,g")))
+             (match_operand 2)))
    (use (match_operand:SI 3 "immediate_operand" "O,O,n,n"))
    (clobber (reg:SI LR_REGNO))]
   "DEFAULT_ABI == ABI_V4
 (define_insn_and_split "*call_value_nonlocal_sysv<mode>"
   [(set (match_operand 0 "" "")
        (call (mem:SI (match_operand:P 1 "symbol_ref_operand" "s,s"))
-             (match_operand 2 "" "g,g")))
+             (match_operand 2)))
    (use (match_operand:SI 3 "immediate_operand" "O,n"))
    (clobber (reg:SI LR_REGNO))]
   "(DEFAULT_ABI == ABI_DARWIN
 (define_insn "*call_value_nonlocal_sysv_secure<mode>"
   [(set (match_operand 0 "" "")
        (call (mem:SI (match_operand:P 1 "symbol_ref_operand" "s,s"))
-             (match_operand 2 "" "g,g")))
+             (match_operand 2)))
    (use (match_operand:SI 3 "immediate_operand" "O,n"))
    (use (match_operand:SI 4 "register_operand" "r,r"))
    (clobber (reg:SI LR_REGNO))]
 
 (define_insn "*call_local_aix<mode>"
   [(call (mem:SI (match_operand:P 0 "current_file_function_operand" "s"))
-        (match_operand 1 "" "g"))
+        (match_operand 1))
    (clobber (reg:P LR_REGNO))]
   "DEFAULT_ABI == ABI_AIX || DEFAULT_ABI == ABI_ELFv2"
   "bl %z0"
 (define_insn "*call_value_local_aix<mode>"
   [(set (match_operand 0 "" "")
        (call (mem:SI (match_operand:P 1 "current_file_function_operand" "s"))
-             (match_operand 2 "" "g")))
+             (match_operand 2)))
    (clobber (reg:P LR_REGNO))]
   "DEFAULT_ABI == ABI_AIX || DEFAULT_ABI == ABI_ELFv2"
   "bl %z1"
 
 (define_insn "*call_nonlocal_aix<mode>"
   [(call (mem:SI (match_operand:P 0 "symbol_ref_operand" "s"))
-        (match_operand 1 "" "g"))
+        (match_operand 1))
    (clobber (reg:P LR_REGNO))]
   "DEFAULT_ABI == ABI_AIX || DEFAULT_ABI == ABI_ELFv2"
 {
 (define_insn "*call_value_nonlocal_aix<mode>"
   [(set (match_operand 0 "" "")
        (call (mem:SI (match_operand:P 1 "symbol_ref_operand" "s"))
-             (match_operand 2 "" "g")))
+             (match_operand 2)))
    (clobber (reg:P LR_REGNO))]
   "DEFAULT_ABI == ABI_AIX || DEFAULT_ABI == ABI_ELFv2"
 {
 
 (define_insn "*call_indirect_aix<mode>"
   [(call (mem:SI (match_operand:P 0 "register_operand" "c,*l"))
-        (match_operand 1 "" "g,g"))
+        (match_operand 1))
    (use (match_operand:P 2 "memory_operand" "<ptrm>,<ptrm>"))
    (set (reg:P TOC_REGNUM) (unspec:P [(match_operand:P 3 "const_int_operand" "n,n")] UNSPEC_TOCSLOT))
    (clobber (reg:P LR_REGNO))]
 (define_insn "*call_value_indirect_aix<mode>"
   [(set (match_operand 0 "" "")
        (call (mem:SI (match_operand:P 1 "register_operand" "c,*l"))
-             (match_operand 2 "" "g,g")))
+             (match_operand 2)))
    (use (match_operand:P 3 "memory_operand" "<ptrm>,<ptrm>"))
    (set (reg:P TOC_REGNUM) (unspec:P [(match_operand:P 4 "const_int_operand" "n,n")] UNSPEC_TOCSLOT))
    (clobber (reg:P LR_REGNO))]
 
 (define_insn "*call_indirect_elfv2<mode>"
   [(call (mem:SI (match_operand:P 0 "register_operand" "c,*l"))
-        (match_operand 1 "" "g,g"))
+        (match_operand 1))
    (set (reg:P TOC_REGNUM) (unspec:P [(match_operand:P 2 "const_int_operand" "n,n")] UNSPEC_TOCSLOT))
    (clobber (reg:P LR_REGNO))]
   "DEFAULT_ABI == ABI_ELFv2"
 (define_insn "*call_value_indirect_elfv2<mode>"
   [(set (match_operand 0 "" "")
        (call (mem:SI (match_operand:P 1 "register_operand" "c,*l"))
-             (match_operand 2 "" "g,g")))
+             (match_operand 2)))
    (set (reg:P TOC_REGNUM) (unspec:P [(match_operand:P 3 "const_int_operand" "n,n")] UNSPEC_TOCSLOT))
    (clobber (reg:P LR_REGNO))]
   "DEFAULT_ABI == ABI_ELFv2"
 
 (define_insn "*sibcall_local32"
   [(call (mem:SI (match_operand:SI 0 "current_file_function_operand" "s,s"))
-        (match_operand 1 "" "g,g"))
+        (match_operand 1))
    (use (match_operand:SI 2 "immediate_operand" "O,n"))
    (simple_return)]
   "(INTVAL (operands[2]) & CALL_LONG) == 0"
 
 (define_insn "*sibcall_local64"
   [(call (mem:SI (match_operand:DI 0 "current_file_function_operand" "s,s"))
-        (match_operand 1 "" "g,g"))
+        (match_operand 1))
    (use (match_operand:SI 2 "immediate_operand" "O,n"))
    (simple_return)]
   "TARGET_64BIT && (INTVAL (operands[2]) & CALL_LONG) == 0"
 (define_insn "*sibcall_value_local32"
   [(set (match_operand 0 "" "")
        (call (mem:SI (match_operand:SI 1 "current_file_function_operand" "s,s"))
-             (match_operand 2 "" "g,g")))
+             (match_operand 2)))
    (use (match_operand:SI 3 "immediate_operand" "O,n"))
    (simple_return)]
   "(INTVAL (operands[3]) & CALL_LONG) == 0"
 (define_insn "*sibcall_value_local64"
   [(set (match_operand 0 "" "")
        (call (mem:SI (match_operand:DI 1 "current_file_function_operand" "s,s"))
-             (match_operand 2 "" "g,g")))
+             (match_operand 2)))
    (use (match_operand:SI 3 "immediate_operand" "O,n"))
    (simple_return)]
   "TARGET_64BIT && (INTVAL (operands[3]) & CALL_LONG) == 0"
 
 (define_insn "*sibcall_aix<mode>"
   [(call (mem:SI (match_operand:P 0 "call_operand" "s,c"))
-        (match_operand 1 "" "g,g"))
+        (match_operand 1))
    (simple_return)]
   "DEFAULT_ABI == ABI_AIX || DEFAULT_ABI == ABI_ELFv2"
 {
 (define_insn "*sibcall_value_aix<mode>"
   [(set (match_operand 0 "" "")
        (call (mem:SI (match_operand:P 1 "call_operand" "s,c"))
-             (match_operand 2 "" "g,g")))
+             (match_operand 2)))
    (simple_return)]
   "DEFAULT_ABI == ABI_AIX || DEFAULT_ABI == ABI_ELFv2"
 {