Commit b16417d6 by Bob Wilson Committed by Bob Wilson

xtensa.c (function_arg): Generalize logic so that it handles complex and vector modes.

	* config/xtensa/xtensa.c (function_arg): Generalize logic so that it
	handles complex and vector modes.

From-SVN: r76373
parent 0dce1c0f
2004-01-22 Bob Wilson <bob.wilson@acm.org>
* config/xtensa/xtensa.c (function_arg): Generalize logic so that it
handles complex and vector modes.
2004-01-22 Kazu Hirata <kazu@cs.umass.edu> 2004-01-22 Kazu Hirata <kazu@cs.umass.edu>
* config/h8300/h8300.h (REG_OK_FOR_INDEX_P_STRICT): Remove. * config/h8300/h8300.h (REG_OK_FOR_INDEX_P_STRICT): Remove.
......
...@@ -1753,12 +1753,12 @@ function_arg (CUMULATIVE_ARGS *cum, enum machine_mode mode, tree type, ...@@ -1753,12 +1753,12 @@ function_arg (CUMULATIVE_ARGS *cum, enum machine_mode mode, tree type,
result_mode = (mode == BLKmode ? TYPE_MODE (type) : mode); result_mode = (mode == BLKmode ? TYPE_MODE (type) : mode);
/* We need to make sure that references to a7 are represented with /* We need to make sure that references to a7 are represented with
rtx that is not equal to hard_frame_pointer_rtx. For BLKmode and rtx that is not equal to hard_frame_pointer_rtx. For multi-word
modes bigger than 2 words (because we only have patterns for modes for which we don't define move patterns, we can't control
modes of 2 words or smaller), we can't control the expansion the expansion unless we explicitly list the individual registers
unless we explicitly list the individual registers in a PARALLEL. */ in a PARALLEL. */
if ((mode == BLKmode || words > 2) if (mode != DImode && mode != DFmode
&& regno < A7_REG && regno < A7_REG
&& regno + words > A7_REG) && regno + words > A7_REG)
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment