Commit f5cb6fbf by Eric Botcazou Committed by Eric Botcazou

aliasing1.ad[sb]: New test.

	* gnat.dg/aliasing1.ad[sb]: New test.
	* gnat.dg/aliasing2.ad[sb]: Likewise.

From-SVN: r136331
parent 30783513
2008-06-03 Eric Botcazou <ebotcazou@adacore.com>
* gnat.dg/aliasing1.ad[sb]: New test.
* gnat.dg/aliasing2.ad[sb]: Likewise.
2008-06-02 Andy Hutchinson <hutchinsonandy@aim.com> 2008-06-02 Andy Hutchinson <hutchinsonandy@aim.com>
* gcc.target/avr/avr.exp: Add avr testsuite. * gcc.target/avr/avr.exp: Add avr testsuite.
......
-- { dg-do compile }
-- { dg-options "-O2 -gnatp -fdump-tree-final_cleanup" }
-- The raise statement must be optimized away by
-- virtue of DECL_NONADDRESSABLE_P set on R.I.
package body Aliasing1 is
function F (P : Ptr) return Integer is
begin
R.I := 0;
P.all := 1;
if R.I /= 0 then
raise Program_Error;
end if;
return 0;
end;
end Aliasing1;
-- { dg-final { scan-tree-dump-not "__gnat_rcheck" "final_cleanup" } }
-- { dg-final { cleanup-tree-dump "final_cleanup" } }
package Aliasing1 is
type Rec is record
I : Integer;
end record;
type Ptr is access all Integer;
R : Rec;
function F (P : Ptr) return Integer;
end Aliasing1;
-- { dg-do compile }
-- { dg-options "-O2 -gnatp -fdump-tree-final_cleanup" }
-- The raise statement must be optimized away by
-- virtue of TYPE_NONALIASED_COMPONENT set on A.
package body Aliasing2 is
function F (P : Ptr) return Integer is
begin
A (1) := 0;
P.all := 1;
if A(1) /= 0 then
raise Program_Error;
end if;
return 0;
end;
end Aliasing2;
-- { dg-final { scan-tree-dump-not "__gnat_rcheck" "final_cleanup" } }
-- { dg-final { cleanup-tree-dump "final_cleanup" } }
package Aliasing2 is
type Arr is Array (1..4) of Integer;
type Ptr is access all Integer;
A : Arr;
function F (P : Ptr) return Integer;
end Aliasing2;
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