Commit aa06e8f5 by J"orn Rennecke Committed by Joern Rennecke

sh.c (dump_table): DImode pool constants need only 32 bit alignment.

	* sh.c (dump_table): DImode pool constants need only 32 bit alignment.
	DFmode alignment depends on TARGET_FMOVD && TARGET_ALIGN_DOUBLE.

From-SVN: r59891
parent 0113c3c0
Fri Dec 6 19:36:24 2002 J"orn Rennecke <joern.rennecke@superh.com>
* sh.c (dump_table): DImode pool constants need only 32 bit alignment.
DFmode alignment depends on TARGET_FMOVD && TARGET_ALIGN_DOUBLE.
Fri Dec 6 19:17:49 2002 J"orn Rennecke <joern.rennecke@superh.com>
* sh.md (movdi_i): Name. Remove inappropriate comment.
......
......@@ -2354,7 +2354,7 @@ dump_table (scan)
int i;
int need_align = 1;
rtx lab, ref;
int have_di = 0;
int have_df = 0;
/* Do two passes, first time dump out the HI sized constants. */
......@@ -2379,13 +2379,13 @@ dump_table (scan)
scan = emit_insn_after (gen_consttable_window_end (lab), scan);
}
}
else if (p->mode == DImode || p->mode == DFmode)
have_di = 1;
else if (p->mode == DFmode)
have_df = 1;
}
need_align = 1;
if (TARGET_SHCOMPACT && have_di)
if (TARGET_FMOVD && TARGET_ALIGN_DOUBLE && have_df)
{
rtx align_insn = NULL_RTX;
......@@ -2429,13 +2429,13 @@ dump_table (scan)
}
break;
case DFmode:
case DImode:
if (need_align)
{
scan = emit_insn_after (gen_align_log (GEN_INT (3)), scan);
align_insn = scan;
need_align = 0;
}
case DImode:
for (lab = p->label; lab; lab = LABEL_REFS (lab))
scan = emit_label_after (lab, scan);
scan = emit_insn_after (gen_consttable_8 (p->value, const0_rtx),
......
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