https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102570

--- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Richard Biener <rgue...@gcc.gnu.org>:

https://gcc.gnu.org/g:55a3be2f5255d69e740d61b2c5aaba1ccbc643b8

commit r12-4143-g55a3be2f5255d69e740d61b2c5aaba1ccbc643b8
Author: Richard Biener <rguent...@suse.de>
Date:   Mon Oct 4 10:57:45 2021 +0200

    tree-optimization/102570 - teach VN about internal functions

    We're now using internal functions for a lot of stuff but there's
    still missing VN support out of laziness.  The following instantiates
    support and adds testcases for FRE and PRE (hoisting).

    2021-10-04  Richard Biener  <rguent...@suse.de>

            PR tree-optimization/102570
            * tree-ssa-sccvn.h (vn_reference_op_struct): Document
            we are using clique for the internal function code.
            * tree-ssa-sccvn.c (vn_reference_op_eq): Compare the
            internal function code.
            (print_vn_reference_ops): Print the internal function code.
            (vn_reference_op_compute_hash): Hash it.
            (copy_reference_ops_from_call): Record it.
            (visit_stmt): Remove the restriction around internal function
            calls.
            (fully_constant_vn_reference_p): Use fold_const_call and handle
            internal functions.
            (vn_reference_eq): Compare call return types.
            * tree-ssa-pre.c (create_expression_by_pieces): Handle
            generating calls to internal functions.
            (compute_avail): Remove the restriction around internal function
            calls.

            * gcc.dg/tree-ssa/ssa-fre-96.c: New testcase.
            * gcc.dg/tree-ssa/ssa-pre-33.c: Likewise.

Reply via email to