Commit 93a4f5e0 by Janis Johnson Committed by Janis Johnson

re PR target/37283 (Cannot build crtbegin.o for ARM)

	PR target/37283
	* opts.c (decode_options): Handle more relationships among
	unit-at-a-time, toplevel-reorder, and section-anchors.

Co-Authored-By: Samuel Tardieu <sam@rfc1149.net>

From-SVN: r140040
parent 57f59a45
2008-09-05 Janis Johnson <janis187@us.ibm.com>
Samuel Tardieu <sam@rfc1149.net>
PR target/37283
* opts.c (decode_options): Handle more relationships among
unit-at-a-time, toplevel-reorder, and section-anchors.
2008-09-05 David Daney <ddaney@avtrex.com> 2008-09-05 David Daney <ddaney@avtrex.com>
* doc/install.texi (--enable-reduced-reflection): Document new option. * doc/install.texi (--enable-reduced-reflection): Document new option.
......
...@@ -1008,21 +1008,35 @@ decode_options (unsigned int argc, const char **argv) ...@@ -1008,21 +1008,35 @@ decode_options (unsigned int argc, const char **argv)
handle_options (argc, argv, lang_mask); handle_options (argc, argv, lang_mask);
/* -fno-unit-at-a-time and -fno-toplevel-reorder handling. */ /* Handle related options for unit-at-a-time, toplevel-reorder, and
section-anchors. */
if (!flag_unit_at_a_time) if (!flag_unit_at_a_time)
{ {
if (flag_section_anchors == 1)
error ("Section anchors must be disabled when unit-at-a-time "
"is disabled.");
flag_section_anchors = 0; flag_section_anchors = 0;
if (flag_toplevel_reorder == 1)
error ("Toplevel reorder must be disabled when unit-at-a-time "
"is disabled.");
flag_toplevel_reorder = 0; flag_toplevel_reorder = 0;
} }
else if (!optimize && flag_toplevel_reorder == 2) if (!optimize)
/* We disable toplevel reordering at -O0 to disable transformations that {
might be surprising to end users and to get -fno-toplevel-reorder /* Unless the user has asked for section anchors, we disable toplevel
tested, but we keep section anchors. */ reordering at -O0 to disable transformations that might be surprising
flag_toplevel_reorder = 0; to end users and to get -fno-toplevel-reorder tested. */
else if (!flag_toplevel_reorder) if (flag_toplevel_reorder == 2 && flag_section_anchors != 1)
{
flag_toplevel_reorder = 0;
flag_section_anchors = 0;
}
}
if (!flag_toplevel_reorder)
{ {
if (flag_section_anchors == 1) if (flag_section_anchors == 1)
error ("section anchors must be disabled when toplevel reorder is disabled"); error ("section anchors must be disabled when toplevel reorder"
" is disabled");
flag_section_anchors = 0; flag_section_anchors = 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