aboutsummaryrefslogtreecommitdiff
path: root/gcc/function.c
diff options
context:
space:
mode:
authorJohn Wehle <john@feith.com>2000-10-20 04:56:21 +0000
committerJohn Wehle <wehle@gcc.gnu.org>2000-10-20 04:56:21 +0000
commitbf6d9fd730ee324567bc8aaf70e6effa557e0d25 (patch)
tree201554ac1d3485982312d26bdd55e6a11243e633 /gcc/function.c
parentcab8e2bd65e10cbd59f4240056710c9653aa4418 (diff)
downloadgcc-bf6d9fd730ee324567bc8aaf70e6effa557e0d25.zip
gcc-bf6d9fd730ee324567bc8aaf70e6effa557e0d25.tar.gz
gcc-bf6d9fd730ee324567bc8aaf70e6effa557e0d25.tar.bz2
alias.c: (mark_constant_function): Don't check pure functions.
* alias.c: (mark_constant_function): Don't check pure functions. Initialize and end alias analysis. (nonlocal_mentioned_p): Rename from nonlocal_reference_p. Don't make a special exception for recursion. Handle UNSPEC_VOLATILE. Don't assume ASM_OPERANDS is non-local unless it's volatile. * local-alloc.c (equivalence): New structure. (reg_equiv): Define. (contains_replace_regs): Remove array and use field in reg_equiv. (memref_referenced_p): Likewise. (no_equiv): Likewise. (update_equiv_regs): Likewise. (equiv_init_varies_p, equiv_init_movable_p): New functions. (update_equiv_regs): Use them. Use rtx_varies_p instead of function_invariant_p. Process insns from end to beginning. Allow a REG_EQUIV insn within the same loop as a use to be moved, also allow it to be moved out of a loop. Update REG_DEAD notes when substituting into an insn. From-SVN: r36957
Diffstat (limited to 'gcc/function.c')
0 files changed, 0 insertions, 0 deletions