Handle aggregate pass-through for self-recursive call (PR ipa/92794)
authorFeng Xue <fxue@os.amperecomputing.com>
Thu, 19 Dec 2019 02:54:40 +0000 (02:54 +0000)
committerFeng Xue <fxue@gcc.gnu.org>
Thu, 19 Dec 2019 02:54:40 +0000 (02:54 +0000)
commit951e27f58ca5c7f33124407079c383706e99c68d
treeb65a6e0da38ccfd243a0ba0325bae4961c4a4f5b
parent1ed6330924d2b7f961bbf68d7e2617c4e9372c4f
Handle aggregate pass-through for self-recursive call (PR ipa/92794)

2019-12-19  Feng Xue  <fxue@os.amperecomputing.com>

        PR ipa/92794
        * ipa-cp.c (self_recursive_agg_pass_through_p): New function.
        (intersect_with_plats): Use error_mark_node as place holder
        when aggregate jump function is simple pass-through for
        self-recursive call.
        (intersect_with_agg_replacements): Likewise.
        (intersect_aggregates_with_edge): Likewise.
        (find_aggregate_values_for_callers_subset): Likewise.

2019-12-19  Feng Xue  <fxue@os.amperecomputing.com>

        PR ipa/92794
        * gcc.dg/ipa/92794.c: New test.

From-SVN: r279561
gcc/ChangeLog
gcc/ipa-cp.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/ipa/pr92794.c [new file with mode: 0644]