Commit 383e91e4 by Janis Johnson Committed by Janis Johnson

re PR target/35713 (invalid type for va_arg with _Decimal128)

	PR target/35713
	* config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Use integer
	  constants of the appropriate size for runtime calculations.

From-SVN: r133887
parent 311b11ec
2008-04-03 Janis Johnson <janis187@us.ibm.com> 2008-04-03 Janis Johnson <janis187@us.ibm.com>
PR target/35713
* config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Use integer
constants of the appropriate size for runtime calculations.
PR c/35712 PR c/35712
* dfp.c (decimal_from_decnumber): Retain trailing zeroes for * dfp.c (decimal_from_decnumber): Retain trailing zeroes for
decimal-float literal constant zero. decimal-float literal constant zero.
......
...@@ -6832,7 +6832,8 @@ rs6000_gimplify_va_arg (tree valist, tree type, tree *pre_p, tree *post_p) ...@@ -6832,7 +6832,8 @@ rs6000_gimplify_va_arg (tree valist, tree type, tree *pre_p, tree *post_p)
else if (reg == fpr && TYPE_MODE (type) == TDmode) else if (reg == fpr && TYPE_MODE (type) == TDmode)
{ {
regalign = 1; regalign = 1;
t = build2 (BIT_IOR_EXPR, TREE_TYPE (reg), reg, size_int (1)); t = build2 (BIT_IOR_EXPR, TREE_TYPE (reg), reg,
build_int_cst (TREE_TYPE (reg), 1));
u = build2 (MODIFY_EXPR, void_type_node, reg, t); u = build2 (MODIFY_EXPR, void_type_node, reg, t);
} }
...@@ -6870,7 +6871,8 @@ rs6000_gimplify_va_arg (tree valist, tree type, tree *pre_p, tree *post_p) ...@@ -6870,7 +6871,8 @@ rs6000_gimplify_va_arg (tree valist, tree type, tree *pre_p, tree *post_p)
{ {
/* Ensure that we don't find any more args in regs. /* Ensure that we don't find any more args in regs.
Alignment has taken care of for special cases. */ Alignment has taken care of for special cases. */
t = build2 (GIMPLE_MODIFY_STMT, TREE_TYPE (reg), reg, size_int (8)); t = build_gimple_modify_stmt (reg,
build_int_cst (TREE_TYPE (reg), 8));
gimplify_and_add (t, pre_p); gimplify_and_add (t, pre_p);
} }
} }
......
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