Home | History | Annotate | Download | only in info

Lines Matching full:ssa

93 * Tree SSA::        Analysis and optimization of the tree representation.
5089 * Tree-SSA passes:: Optimizations on a high-level representation.
5198 File: gccint.info, Node: Pass manager, Next: Tree-SSA passes, Prev: Gimplification pass, Up: Passes
5227 File: gccint.info, Node: Tree-SSA passes, Next: RTL passes, Prev: Pass manager, Up: Passes
5229 8.4 Tree-SSA passes
5314 SSA rewriting routines. The pass is located in `tree-dfa.c' and
5319 This pass rewrites the function such that it is in SSA form. After
5324 in `tree-ssa.c' and is described by `pass_build_ssa'.
5333 are possibly uninitialized. The pass is located in `tree-ssa.c'
5343 located in `tree-ssa-dce.c' and is described by `pass_dce'.
5350 located in `tree-ssa-dom.c' and is described by `pass_dominator'.
5357 `tree-ssa-forwprop.c' and is described by `pass_forwprop'.
5362 involved in copy operations such that SSA->normal can coalesce the
5366 in `tree-ssa-copyrename.c' and is described by `pass_copyrename'.
5372 It is located in `tree-ssa-phiopt.c' and is described by
5377 This pass performs a flow sensitive SSA-based points-to analysis.
5381 into SSA form. We also update the `VDEF'/`VUSE' memory tags for
5383 pass is located in `tree-ssa-alias.c' and is described by
5387 `tree-ssa-structalias.c' and described by `pass_ipa_pta'.
5407 rewritten into SSA form, which allows subsequent optimization
5415 pass is located in `tree-ssa-dse.c' and is described by `pass_dse'.
5425 to their use point. The pass is located in `tree-ssa-sink.c' and
5431 performing load motion. The pass is located in `tree-ssa-pre.c'
5437 located in `tree-ssa-math-opts.c' and is described by
5443 that occur an all paths. It is located in `tree-ssa-pre.c' and
5448 The main driver of the pass is placed in `tree-ssa-loop.c' and
5459 is implemented in `tree-ssa-loop-im.c'.
5466 pass is implemented in `tree-ssa-loop-ivcanon.c'.
5471 The pass is implemented in `tree-ssa-loop-ivopts.c'.
5476 The pass is implemented in `tree-ssa-loop-unswitch.c'. This pass
5483 `tree-ssa-loop-manip.c', `cfgloop.c', `cfgloopanal.c' and
5519 The pass is located in `tree-ssa-ccp.c' and is described by
5523 register values, is located in `tree-ssa-ccp.c' and described by
5530 code. The pass is located in `tree-ssa-copy.c' and described by
5534 copies, is located in `tree-ssa-copy.c' and described by
5545 branch probabilities nor it uses more than a single range per SSA
5555 located in `tree-ssa-ccp.c' and is described by
5568 `tree-ssa-dce.c' and is described by `pass_cd_dce'.
5608 GENERIC. The pass is located in `tree-outof-ssa.c' and is
5645 loops. The pass is located in `tree-ssa-loop.c' and described by
5661 in `tree-ssa-loop-ivcanon.c' and described by `pass_empty_loop'.
5666 is located in `tree-ssa-loop-ivcanon.c' and described by
5683 loops. The pass is located in `tree-ssa-loop-prefetch.c' and
5690 vectorization. The pass is located in `tree-ssa-reassoc.c' and
5707 File: gccint.info, Node: RTL passes, Prev: Tree-SSA passes, Up: Passes
8491 File: gccint.info, Node: Tree SSA, Next: Loop Analysis and Representation, Prev: Control Flow, Up: Top
8526 * SSA:: Static Single Assignment representation.
8530 File: gccint.info, Node: GENERIC, Next: GIMPLE, Up: Tree SSA
8564 File: gccint.info, Node: GIMPLE, Next: Annotations, Prev: GENERIC, Up: Tree SSA
9234 File: gccint.info, Node: Annotations, Next: Statement Operands, Prev: GIMPLE, Up: Tree SSA
9247 variables (`var_ann_t') and SSA names (`ssa_name_ann_t'). Annotations
9251 File: gccint.info, Node: Statement Operands, Next: SSA, Prev: Annotations, Up: Tree SSA
9354 into SSA form. This will be used to link all the non-killing
9369 Operands are collected by `tree-ssa-operands.c'. They are stored
9427 `tree-ssa-operands.h':
9483 documentation in `tree-ssa-operands.h'.
9620 File: gccint.info, Node: SSA, Next: Alias analysis, Prev: Statement Operands, Up: Tree SSA
9626 by the Static Single Assignment (SSA) form. We implement the SSA form
9632 The SSA form is based on the premise that program variables are
9635 actual programs are seldom in SSA form initially because variables tend
9645 process in `tree-ssa.c' wraps every real and virtual operand with an
9668 use at the return statement. So, the SSA renamer creates a new version
9692 10.5.1 Preserving the SSA form
9696 the SSA property. This can happen when a pass has added new symbols or
9699 symbols must be renamed into SSA form again. Transformations that emit
9701 SSA form.
9703 Since GCC implements two different SSA forms for register and virtual
9704 variables, keeping the SSA form up to date depends on whether you are
9706 behind incremental SSA updates is similar: when new SSA names are
9749 nodes is optional. They are not strictly necessary to preserve the SSA
9753 Updating the SSA form is a two step process. First, the pass has to
9755 renamed into SSA form for the first time. When new names are
9761 exposes a new symbol that should be put in SSA form for the first time,
9770 * `TODO_update_ssa'. Update the SSA form inserting PHI nodes
9780 * `TODO_update_ssa_no_phi'. Update the SSA form without
9797 * `TODO_update_ssa_only_virtuals'. Passes that update the SSA
9805 10.5.2 Preserving the virtual SSA form
9808 The virtual SSA form is harder to preserve than the non-virtual SSA form
9824 marking for the SSA renamer.
9853 -- Tree SSA function: void walk_use_def_chains (VAR, FN, DATA)
9877 -- Tree SSA function: void walk_dominator_tree (WALK_DATA, BB)
9906 File: gccint.info, Node: Alias analysis, Prev: SSA, Up: Tree SSA
9950 This phase walks the use-def chains in the SSA web looking for
9969 renamed into SSA, we lose track of escape properties when a
10121 File: gccint.info, Node: Loop Analysis and Representation, Next: Machine Desc, Prev: Tree SSA, Up: Top
10137 * LCSSA:: Loop-closed SSA form.
10365 loop-closed SSA form is preserved). Only useful on GIMPLE.
10399 11.4 Loop-closed SSA form
10403 enforced on the SSA form: No SSA name is used outside of the loop in
10404 that it is defined. The SSA form satisfying this condition is called
10405 "loop-closed SSA form" - LCSSA. To enforce LCSSA, PHI nodes must be
10406 created at the exits of the loops for the SSA names that are used
10407 outside of them. Only the real operands (not virtual SSA names) are
10420 loop in that the SSA name is defined.
10422 * It makes updating of SSA form during loop transformations simpler.
10425 SSA form can be updated locally. However, since we only keep real
10428 than to use generic SSA form updating for it as well; the amount
10429 of changes to SSA is the same).
10435 `rewrite_into_loop_closed_ssa' is used to rewrite SSA form to LCSSA,
10457 Given an SSA name, its behavior in loops can be analyzed using the
10460 SSA names defined in the loop. To resolve these (potentially
10464 whole nest of loops at once. It will try replacing all SSA names by
10469 on the value of the induction variable. It will only resolve the SSA
10470 names defined in the current loop, leaving the SSA names defined
10475 used for SSA names whose value cannot be expressed. The other one is
14043 File: gccint.info, Node: Control Flow, Next: Tree SSA, Prev: RTL, Up: Top
14234 they may be freely redirected when the flow graph is not in SSA
14474 are enabled and the instruction stream is rewritten in SSA form, the
33503 and for contributing to the tree-ssa branch.
33952 * Diego Novillo for his work on Tree SSA, OpenMP, SPEC performance
38735 * examining SSA_NAMEs: SSA. (line 221)
39262 * Loop-closed SSA form: LCSSA. (line 6)
39561 * Optimization infrastructure for GIMPLE: Tree SSA. (line 6)
39621 * PHI nodes: SSA. (line 31)
39622 * PHI_ARG_DEF: SSA. (line 71)
39623 * PHI_ARG_EDGE: SSA. (line 68)
39624 * PHI_ARG_ELT: SSA. (line 63)
39625 * PHI_NUM_ARGS: SSA. (line 59)
39626 * PHI_RESULT: SSA. (line 56)
39680 * preserving SSA form: SSA. (line 76)
39681 * preserving virtual SSA form: SSA. (line 189)
40078 * SSA: SSA. (line 6)
40079 * SSA_NAME_DEF_STMT: SSA. (line 224)
40080 * SSA_NAME_VERSION: SSA. (line 229)
40137 * static single assignment: SSA. (line 6)
40529 * Tree SSA: Tree SSA. (line 6)
40672 * update_ssa: SSA. (line 76)
40802 * walk_dominator_tree: SSA. (line 259)
40803 * walk_use_def_chains: SSA. (line 235)
40896 Node: Tree-SSA passes243742
40918 Node: Tree SSA389503
40942 Node: SSA431242