view gcc/testsuite/gnat.dg/loop_optimization1.adb @ 143:76e1cf5455ef

add cbc_gc test
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sun, 23 Dec 2018 19:24:05 +0900
parents 04ced10e8804
children
line wrap: on
line source

-- { dg-do compile }
-- { dg-options "-O3" }

package body Loop_Optimization1 is

   procedure Create (A : in out D; Val : Integer) is

      M : constant Group_Chain_List := Group_Chains(Val);
      G : constant Group_List := Groups(Val);

      function Is_Visible (Group : Number) return Boolean is
      begin
         for I in M'Range loop
            if Group = M(I).Groups(M(I).Length) then
               return True;
            end if;
         end loop;
         return False;
      end;

   begin
      for I in A.L'Range loop
         A.L(I) := new R(Is_Visible(G(I)));
      end loop;
   end;

end Loop_Optimization1;