(FUNCTION_ARG_PASS_BY_REFERENCE): Also pass Pascal arrays by reference.
authorJim Wilson <wilson@gcc.gnu.org>
Tue, 21 Dec 1993 19:26:59 +0000 (11:26 -0800)
committerJim Wilson <wilson@gcc.gnu.org>
Tue, 21 Dec 1993 19:26:59 +0000 (11:26 -0800)
From-SVN: r6255

gcc/config/sparc/sparc.h

index 2ce76de637e44853829eaa06921336f2f175e825..08217a38c03e2e03b7e305e74ce73f6d9e4e1065 100644 (file)
@@ -872,10 +872,12 @@ extern char leaf_reg_backmap[];
    : 0)
 
 /* The SPARC ABI stipulates passing struct arguments (of any size) and
-   quad-precision floats by invisible reference.  */
+   quad-precision floats by invisible reference.
+   For Pascal, also pass arrays by reference.  */
 #define FUNCTION_ARG_PASS_BY_REFERENCE(CUM, MODE, TYPE, NAMED)         \
   ((TYPE && (TREE_CODE (TYPE) == RECORD_TYPE                           \
-           || TREE_CODE (TYPE) == UNION_TYPE))                         \
+           || TREE_CODE (TYPE) == UNION_TYPE                           \
+           || TREE_CODE (TYPE) == ARRAY_TYPE))                         \
    || (MODE == TFmode))
 
 /* Define the information needed to generate branch and scc insns.  This is