Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gnat.dg/vfa1_3.adb @ 145:1830386684a0
gcc-9.2.0
author | anatofuz |
---|---|
date | Thu, 13 Feb 2020 11:34:05 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
-- { dg-do compile } -- { dg-options "-fdump-tree-gimple" } with VFA1_Pkg; use VFA1_Pkg; procedure VFA1_3 is Temp : Short_Integer; function F (I : Short_Integer) return Short_Integer is begin return I; end; function F2 return Short_Integer is begin return Short_Integer(Buffer1.A); end; procedure P3 (I : out Short_Integer) is begin null; end; begin Temp := Buffer1.A; Buffer1.B := Temp; Temp := Buffer2.A; Buffer2.B := Temp; Temp := Buffer1.A + Buffer2.B; if Buffer1.A /= Buffer2.B then raise Program_Error; end if; Temp := F(Buffer1.A); Buffer2.B := F(Temp); Temp := F(Buffer2.B); Buffer1.A := F(Temp); Temp := F2; P3 (Buffer2.B); end; -- { dg-final { scan-tree-dump-times "atomic_load\[^\n\r\]*&vfa1_pkg__buffer1" 7 "gimple"} } -- { dg-final { scan-tree-dump-times "atomic_load\[^\n\r\]*&vfa1_pkg__buffer2" 7 "gimple"} } -- { dg-final { scan-tree-dump-times "atomic_load\[^\n\r\]*&temp" 0 "gimple"} } -- { dg-final { scan-tree-dump-times "atomic_store\[^\n\r\]*&vfa1_pkg__buffer1" 2 "gimple"} } -- { dg-final { scan-tree-dump-times "atomic_store\[^\n\r\]*&vfa1_pkg__buffer2" 3 "gimple"} } -- { dg-final { scan-tree-dump-times "atomic_store\[^\n\r\]*&temp" 0 "gimple"} }