fold-const.c (round_up_loc): Cast divisor to HOST_WIDE_INT before negating it.

* fold-const.c (round_up_loc): Cast divisor to HOST_WIDE_INT before
	negating it.

	* tree-sra.c (pa_sra_preliminary_function_checks): Fix typo in message.

From-SVN: r221159
This commit is contained in:
Eric Botcazou 2015-03-03 17:56:07 +00:00 committed by Eric Botcazou
parent 590e26360c
commit 3a5c579a89
5 changed files with 33 additions and 2 deletions

View File

@ -1,3 +1,10 @@
2015-03-03 Eric Botcazou <ebotcazou@adacore.com>
* fold-const.c (round_up_loc): Cast divisor to HOST_WIDE_INT before
negating it.
* tree-sra.c (pa_sra_preliminary_function_checks): Fix typo in message.
2015-03-03 Max Filippov <jcmvbkbc@gmail.com>
Implement call0 ABI for xtensa

View File

@ -16032,7 +16032,7 @@ round_up_loc (location_t loc, tree value, unsigned int divisor)
t = build_int_cst (TREE_TYPE (value), divisor - 1);
value = size_binop_loc (loc, PLUS_EXPR, value, t);
t = build_int_cst (TREE_TYPE (value), -divisor);
t = build_int_cst (TREE_TYPE (value), - (HOST_WIDE_INT) divisor);
value = size_binop_loc (loc, BIT_AND_EXPR, value, t);
}
}

View File

@ -1,3 +1,7 @@
2015-03-03 Eric Botcazou <ebotcazou@adacore.com>
* gnat.dg/object_overflow5.adb: New test.
2015-03-03 Martin Liska <mliska@suse.cz>
PR ipa/65287

View File

@ -0,0 +1,20 @@
-- { dg-do compile }
procedure Object_Overflow5 is
procedure Proc (c : Character) is begin null; end;
type Index is new Long_Integer range 0 .. Long_Integer'Last;
type Arr is array(Index range <>) of Character;
type Rec (Size: Index := 6) is record -- { dg-warning "Storage_Error" }
A: Arr (0..Size);
end record;
Obj : Rec; -- { dg-warning "Storage_Error" }
begin
Obj.A(1) := 'a';
Proc (Obj.A(1));
end;

View File

@ -5144,7 +5144,7 @@ ipa_sra_preliminary_function_checks (struct cgraph_node *node)
{
if (dump_file)
fprintf (dump_file,
"A function call has an argument with non-unit alignemnt.\n");
"A function call has an argument with non-unit alignment.\n");
return false;
}