aboutsummaryrefslogtreecommitdiff
path: root/libjava/testsuite/libjava.lang/anfi.java
diff options
context:
space:
mode:
authorAldy Hernandez <aldyh@redhat.com>2021-09-21 09:04:20 +0200
committerAldy Hernandez <aldyh@redhat.com>2021-09-21 18:55:14 +0200
commitf46d33637c71165622aa4c55008798cbd91a8696 (patch)
treeb623530c77549d9c837cfa8bfaf267019e2dc570 /libjava/testsuite/libjava.lang/anfi.java
parent198bc5ece960557044483b1c72417759b4630f04 (diff)
downloadgcc-f46d33637c71165622aa4c55008798cbd91a8696.zip
gcc-f46d33637c71165622aa4c55008798cbd91a8696.tar.gz
gcc-f46d33637c71165622aa4c55008798cbd91a8696.tar.bz2
path solver: Add relation support.
This patch adds relational support to the path solver. It uses a path_oracle that keeps track of relations within a path which are augmented by relations on entry to the path. With it, range_of_stmt, range_of_expr, and friends can give relation aware answers. gcc/ChangeLog: * gimple-range-fold.h (class fur_source): Make oracle protected. * gimple-range-path.cc (path_range_query::path_range_query): Add resolve argument. Initialize oracle. (path_range_query::~path_range_query): Delete oracle. (path_range_query::range_of_stmt): Adapt to use relations. (path_range_query::precompute_ranges): Pre-compute relations. (class jt_fur_source): New (jt_fur_source::jt_fur_source): New. (jt_fur_source::register_relation): New. (jt_fur_source::query_relation): New. (path_range_query::precompute_relations): New. (path_range_query::precompute_phi_relations): New. * gimple-range-path.h (path_range_query): Add resolve argument. Add oracle, precompute_relations, precompute_phi_relations. * tree-ssa-threadbackward.c (back_threader::back_threader): Pass resolve argument to solver.
Diffstat (limited to 'libjava/testsuite/libjava.lang/anfi.java')
0 files changed, 0 insertions, 0 deletions