Commit 3a5c579a by Eric Botcazou Committed by Eric Botcazou

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
parent 590e2636
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> 2015-03-03 Max Filippov <jcmvbkbc@gmail.com>
Implement call0 ABI for xtensa Implement call0 ABI for xtensa
......
...@@ -16032,7 +16032,7 @@ round_up_loc (location_t loc, tree value, unsigned int divisor) ...@@ -16032,7 +16032,7 @@ round_up_loc (location_t loc, tree value, unsigned int divisor)
t = build_int_cst (TREE_TYPE (value), divisor - 1); t = build_int_cst (TREE_TYPE (value), divisor - 1);
value = size_binop_loc (loc, PLUS_EXPR, value, t); 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); value = size_binop_loc (loc, BIT_AND_EXPR, value, t);
} }
} }
......
2015-03-03 Eric Botcazou <ebotcazou@adacore.com>
* gnat.dg/object_overflow5.adb: New test.
2015-03-03 Martin Liska <mliska@suse.cz> 2015-03-03 Martin Liska <mliska@suse.cz>
PR ipa/65287 PR ipa/65287
......
-- { 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;
...@@ -5144,7 +5144,7 @@ ipa_sra_preliminary_function_checks (struct cgraph_node *node) ...@@ -5144,7 +5144,7 @@ ipa_sra_preliminary_function_checks (struct cgraph_node *node)
{ {
if (dump_file) if (dump_file)
fprintf (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; return false;
} }
......
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