Commit 2c68ba8e by Laurynas Biveinis Committed by Laurynas Biveinis

re PR middle-end/34906 (valgrind error indication from testsuite gimplify.c: gimplify_asm_expr)

2008-06-22  Laurynas Biveinis  <laurynas.biveinis@gmail.com>

	PR middle-end/34906
	* gimplify.c (gimplify_asm_expr): Check the return code of
	parse_output_constraint call, set function return and is_inout
	value if it failed.

From-SVN: r137020
parent d75d71e0
2008-06-22 Laurynas Biveinis <laurynas.biveinis@gmail.com>
PR middle-end/34906
* gimplify.c (gimplify_asm_expr): Check the return code of
parse_output_constraint call, set function return and is_inout
value if it failed.
2008-06-22 Ian Lance Taylor <iant@google.com>
* c-lex.c (narrowest_unsigned_type): Change itk to int.
......
......@@ -4308,14 +4308,20 @@ gimplify_asm_expr (tree *expr_p, tree *pre_p, tree *post_p)
for (i = 0, link = ASM_OUTPUTS (expr); link; ++i, link = TREE_CHAIN (link))
{
size_t constraint_len;
bool ok;
oconstraints[i] = constraint
= TREE_STRING_POINTER (TREE_VALUE (TREE_PURPOSE (link)));
constraint_len = strlen (constraint);
if (constraint_len == 0)
continue;
parse_output_constraint (&constraint, i, 0, 0,
&allows_mem, &allows_reg, &is_inout);
ok = parse_output_constraint (&constraint, i, 0, 0,
&allows_mem, &allows_reg, &is_inout);
if (!ok)
{
ret = GS_ERROR;
is_inout = false;
}
if (!allows_reg && allows_mem)
mark_addressable (TREE_VALUE (link));
......
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