comparison gcc/doc/loop.texi @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents 84e7813d76e9
children
comparison
equal deleted inserted replaced
131:84e7813d76e9 145:1830386684a0
1 @c Copyright (C) 2006-2018 Free Software Foundation, Inc. 1 @c Copyright (C) 2006-2020 Free Software Foundation, Inc.
2 @c Free Software Foundation, Inc. 2 @c Free Software Foundation, Inc.
3 @c This is part of the GCC manual. 3 @c This is part of the GCC manual.
4 @c For copying conditions, see the file gcc.texi. 4 @c For copying conditions, see the file gcc.texi.
5 5
6 @c --------------------------------------------------------------------- 6 @c ---------------------------------------------------------------------
84 macro. The @code{flags} argument of the macro is used to determine 84 macro. The @code{flags} argument of the macro is used to determine
85 the direction of traversal and the set of loops visited. Each loop is 85 the direction of traversal and the set of loops visited. Each loop is
86 guaranteed to be visited exactly once, regardless of the changes to the 86 guaranteed to be visited exactly once, regardless of the changes to the
87 loop tree, and the loops may be removed during the traversal. The newly 87 loop tree, and the loops may be removed during the traversal. The newly
88 created loops are never traversed, if they need to be visited, this 88 created loops are never traversed, if they need to be visited, this
89 must be done separately after their creation. The @code{FOR_EACH_LOOP} 89 must be done separately after their creation.
90 macro allocates temporary variables. If the @code{FOR_EACH_LOOP} loop
91 were ended using break or goto, they would not be released;
92 @code{FOR_EACH_LOOP_BREAK} macro must be used instead.
93 90
94 Each basic block contains the reference to the innermost loop it belongs 91 Each basic block contains the reference to the innermost loop it belongs
95 to (@code{loop_father}). For this reason, it is only possible to have 92 to (@code{loop_father}). For this reason, it is only possible to have
96 one @code{struct loops} structure initialized at the same time for each 93 one @code{struct loops} structure initialized at the same time for each
97 CFG@. The global variable @code{current_loops} contains the 94 CFG@. The global variable @code{current_loops} contains the