From dafe6cf1fbcb996ec77a7322bd7de6e033b7244a Mon Sep 17 00:00:00 2001 From: Richard Stallman Date: Thu, 11 Jun 1992 20:48:19 +0000 Subject: [PATCH] (RETURN_IN_MEMORY): Do nothing for structs and unions. From-SVN: r1192 --- gcc/config/sparc/sparc.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gcc/config/sparc/sparc.h b/gcc/config/sparc/sparc.h index 7a578130700..4e65e67c186 100644 --- a/gcc/config/sparc/sparc.h +++ b/gcc/config/sparc/sparc.h @@ -383,10 +383,11 @@ extern int leaf_function; #define FINALIZE_PIC finalize_pic () /* Sparc ABI says that quad-precision floats and all structures are returned - in memory. */ + in memory. We go along regarding floats, but for structures + we follow GCC's normal policy. Use -fpcc-struct-value + if you want to follow the ABI. */ #define RETURN_IN_MEMORY(TYPE) \ - (TREE_CODE (TYPE) == RECORD_TYPE || TREE_CODE (TYPE) == UNION_TYPE \ - || TYPE_MODE (TYPE) == TFmode) + (TYPE_MODE (TYPE) == TFmode) /* Functions which return large structures get the address to place the wanted value at offset 64 from the frame. -- 2.30.2