diff options
author | J"orn Rennecke <amylaar@cygnus.co.uk> | 1998-03-09 06:13:39 +0000 |
---|---|---|
committer | Joern Rennecke <amylaar@gcc.gnu.org> | 1998-03-09 06:13:39 +0000 |
commit | 97e3c42239ca0eb3ee8425cfc40faa615fdead4c (patch) | |
tree | 01519a35e3cecc4fddde7f6cd67a69665308f56b /gcc | |
parent | 5e75ef4aca22a5c6ac6e32dd46e8035793bd9607 (diff) | |
download | gcc-97e3c42239ca0eb3ee8425cfc40faa615fdead4c.zip gcc-97e3c42239ca0eb3ee8425cfc40faa615fdead4c.tar.gz gcc-97e3c42239ca0eb3ee8425cfc40faa615fdead4c.tar.bz2 |
* sh.h (MUST_PASS_IN_STACK): Define.
From-SVN: r18447
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/sh/sh.h | 8 |
2 files changed, 12 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 87b27d8..2092ff1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +Mon Mar 9 14:10:23 1998 J"orn Rennecke <amylaar@cygnus.co.uk> + + * sh.h (MUST_PASS_IN_STACK): Define. + Sun Mar 8 13:01:56 1998 Jeffrey A Law (law@cygnus.com) * final.c (shorten_branches): Fix minor logic error in diff --git a/gcc/config/sh/sh.h b/gcc/config/sh/sh.h index 746da4f..fad76c9 100644 --- a/gcc/config/sh/sh.h +++ b/gcc/config/sh/sh.h @@ -730,6 +730,14 @@ extern enum reg_class reg_class_from_letter[]; on the stack. */ #define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) 0 +/* Nonzero if we do not know how to pass TYPE solely in registers. + Values that come in registers with inconvenient padding are stored + to memory at the function start. */ + +#define MUST_PASS_IN_STACK(MODE,TYPE) \ + ((TYPE) != 0 \ + && (TREE_CODE (TYPE_SIZE (TYPE)) != INTEGER_CST \ + || TREE_ADDRESSABLE (TYPE))) /* Some subroutine macros specific to this machine. */ #define BASE_RETURN_VALUE_REG(MODE) \ |