[committed/vms] fix ice for vms/ia64

Submitted by Tristan Gingold on March 28, 2011, 3:44 p.m.

Details

Message ID E0B43966-6084-4A5B-8F23-A38003FCBF85@adacore.com
State New
Headers show

Commit Message

Tristan Gingold March 28, 2011, 3:44 p.m.
Hi,

gcc crashes during cross-build of libiberty due to a bad handling of promote_function_mode.
This patch fixes that.

Committed on trunk.

Tristan.

2011-03-28  Tristan Gingold  <gingold@adacore.com>

	* config/ia64/ia64.c (ia64_promote_function_mode): Fix promotion
	when for_return is 2.

Patch hide | download patch | download mbox

Index: gcc/config/ia64/ia64.c
===================================================================
--- gcc/config/ia64/ia64.c	(revision 171607)
+++ gcc/config/ia64/ia64.c	(working copy)
@@ -11001,7 +11001,7 @@ 
      For all other types passed in the general registers, unused bits are
      undefined."  */
 
-  if (!AGGREGATE_TYPE_P (type)
+  if (for_return != 2
       && GET_MODE_CLASS (mode) == MODE_INT
       && GET_MODE_SIZE (mode) < UNITS_PER_WORD)
     {