stor-layout.c (layout_type, [...]): Make size FUNCTION_BOUNDARY, not POINTER_SIZE * 2.

* stor-layout.c (layout_type, case FUNCTION_TYPE): Make size
	FUNCTION_BOUNDARY, not POINTER_SIZE * 2.

From-SVN: r78972
This commit is contained in:
Richard Kenner 2004-03-05 16:19:41 +00:00 committed by Richard Kenner
parent 33e70558b0
commit 019dd4ece9
2 changed files with 11 additions and 3 deletions

View File

@ -1,3 +1,8 @@
2004-03-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* stor-layout.c (layout_type, case FUNCTION_TYPE): Make size
FUNCTION_BOUNDARY, not POINTER_SIZE * 2.
2004-03-05 Ian Lance Taylor <ian@wasabisystems.com>
* configure.ac: When passing --enable-languages to subdir

View File

@ -1582,9 +1582,12 @@ layout_type (tree type)
case FUNCTION_TYPE:
case METHOD_TYPE:
TYPE_MODE (type) = mode_for_size (2 * POINTER_SIZE, MODE_INT, 0);
TYPE_SIZE (type) = bitsize_int (2 * POINTER_SIZE);
TYPE_SIZE_UNIT (type) = size_int ((2 * POINTER_SIZE) / BITS_PER_UNIT);
/* It's hard to see what the mode and size of a function ought to
be, but we do know the alignment is FUNCTION_BOUNDARY, so
make it consistent with that. */
TYPE_MODE (type) = mode_for_size (FUNCTION_BOUNDARY, MODE_INT, 0);
TYPE_SIZE (type) = bitsize_int (FUNCTION_BOUNDARY);
TYPE_SIZE_UNIT (type) = size_int (FUNCTION_BOUNDARY / BITS_PER_UNIT);
break;
case POINTER_TYPE: