Commit 78bad775 by Laurent GUERBY Committed by Laurent Guerby

re PR rtl-optimization/14984 (bootstrap binary compare differs for Ada object files on darwin)

2004-04-22  Laurent GUERBY <laurent@guerby.net>

	PR optimization/14984
	PR optimization/14985
	* trans.c (gigi): Fix non determinism leading to bootstrap
	comparison failures.

From-SVN: r81076
parent bdabb153
2004-04-22 Laurent GUERBY <laurent@guerby.net>
PR optimization/14984
PR optimization/14985
* trans.c (gigi): Fix non determinism leading to bootstrap
comparison failures.
2004-04-21 Pascal Obry <obry@gnat.com> 2004-04-21 Pascal Obry <obry@gnat.com>
* adaint.c (__gnat_portable_spawn): Quote first argument (argv[0]) * adaint.c (__gnat_portable_spawn): Quote first argument (argv[0])
......
...@@ -2112,8 +2112,11 @@ tree_transform (Node_Id gnat_node) ...@@ -2112,8 +2112,11 @@ tree_transform (Node_Id gnat_node)
for (gnat_temp = First (Elsif_Parts (gnat_node)); for (gnat_temp = First (Elsif_Parts (gnat_node));
Present (gnat_temp); gnat_temp = Next (gnat_temp)) Present (gnat_temp); gnat_temp = Next (gnat_temp))
{ {
tree gnu_elseif tree gnu_cond, gnu_elseif;
= build_nt (IF_STMT, gnat_to_gnu (Condition (gnat_temp)),
gnu_cond = gnat_to_gnu (Condition (gnat_temp));
gnu_elseif
= build_nt (IF_STMT, gnu_cond,
build_block_stmt (Then_Statements (gnat_temp)), build_block_stmt (Then_Statements (gnat_temp)),
NULL_TREE, NULL_TREE); NULL_TREE, NULL_TREE);
...@@ -2123,10 +2126,18 @@ tree_transform (Node_Id gnat_node) ...@@ -2123,10 +2126,18 @@ tree_transform (Node_Id gnat_node)
gnu_result = gnu_elseif; gnu_result = gnu_elseif;
} }
gnu_result = build_nt (IF_STMT, gnat_to_gnu (Condition (gnat_node)), {
build_block_stmt (Then_Statements (gnat_node)), tree gnu_cond, then_block, else_block;
gnu_cond = gnat_to_gnu (Condition (gnat_node));
then_block = build_block_stmt (Then_Statements (gnat_node));
else_block = build_block_stmt (Else_Statements (gnat_node));
gnu_result = build_nt (IF_STMT, gnu_cond,
then_block,
nreverse (gnu_result), nreverse (gnu_result),
build_block_stmt (Else_Statements (gnat_node))); else_block);
}
break; break;
case N_Case_Statement: case N_Case_Statement:
......
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