comparison gcc/doc/tree-ssa.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) 2004-2018 Free Software Foundation, Inc. 1 @c Copyright (C) 2004-2020 Free Software Foundation, Inc.
2 @c This is part of the GCC manual. 2 @c This is part of the GCC manual.
3 @c For copying conditions, see the file gcc.texi. 3 @c For copying conditions, see the file gcc.texi.
4 4
5 @c --------------------------------------------------------------------- 5 @c ---------------------------------------------------------------------
6 @c Tree SSA 6 @c Tree SSA
383 a controlled position, and then iterating over those uses. Then the 383 a controlled position, and then iterating over those uses. Then the
384 optimization can manipulate the stmt when all the uses have been 384 optimization can manipulate the stmt when all the uses have been
385 processed. This is a little slower than the FAST version since it adds a 385 processed. This is a little slower than the FAST version since it adds a
386 placeholder element and must sort through the list a bit for each statement. 386 placeholder element and must sort through the list a bit for each statement.
387 This placeholder element must be also be removed if the loop is 387 This placeholder element must be also be removed if the loop is
388 terminated early. The macro @code{BREAK_FROM_IMM_USE_SAFE} is provided 388 terminated early. The macro @code{BREAK_FROM_IMM_USE_STMT} is provided
389 to do this : 389 to do this :
390 390
391 @smallexample 391 @smallexample
392 FOR_EACH_IMM_USE_STMT (stmt, iterator, ssa_var) 392 FOR_EACH_IMM_USE_STMT (stmt, iterator, ssa_var)
393 @{ 393 @{
394 if (stmt == last_stmt) 394 if (stmt == last_stmt)
395 BREAK_FROM_SAFE_IMM_USE (iter); 395 BREAK_FROM_IMM_USE_STMT (iterator);
396 396
397 FOR_EACH_IMM_USE_ON_STMT (imm_use_p, iterator) 397 FOR_EACH_IMM_USE_ON_STMT (imm_use_p, iterator)
398 SET_USE (imm_use_p, ssa_var_2); 398 SET_USE (imm_use_p, ssa_var_2);
399 fold_stmt (stmt); 399 fold_stmt (stmt);
400 @} 400 @}