Commit 64609742 by Richard Kenner

(get_secondary_mem): Call SECONDARY_MEMORY_NEEDED_MODE if it is

defined.

From-SVN: r6697
parent 26967318
...@@ -602,14 +602,17 @@ get_secondary_mem (x, mode, opnum, type) ...@@ -602,14 +602,17 @@ get_secondary_mem (x, mode, opnum, type)
rtx loc; rtx loc;
int mem_valid; int mem_valid;
/* If MODE is narrower than a word, widen it. This is required because /* By default, if MODE is narrower than a word, widen it to a word.
most machines that require these memory locations do not support This is required because most machines that require these memory
short load and stores from all registers (e.g., FP registers). We could locations do not support short load and stores from all registers
possibly conditionalize this, but we lose nothing by doing the wider (e.g., FP registers). */
mode. */
#ifdef SECONDARY_MEMORY_NEEDED_MODE
mode = SECONDARY_MEMORY_NEEDED_MODE (mode);
#else
if (GET_MODE_BITSIZE (mode) < BITS_PER_WORD) if (GET_MODE_BITSIZE (mode) < BITS_PER_WORD)
mode = mode_for_size (BITS_PER_WORD, GET_MODE_CLASS (mode), 0); mode = mode_for_size (BITS_PER_WORD, GET_MODE_CLASS (mode), 0);
#endif
/* If we already have made a MEM for this operand in MODE, return it. */ /* If we already have made a MEM for this operand in MODE, return it. */
if (secondary_memlocs_elim[(int) mode][opnum] != 0) if (secondary_memlocs_elim[(int) mode][opnum] != 0)
......
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