]> git.ipfire.org Git - thirdparty/gcc.git/commit
Some more predicate analysis TLC
authorRichard Biener <rguenther@suse.de>
Wed, 24 Aug 2022 08:08:17 +0000 (10:08 +0200)
committerRichard Biener <rguenther@suse.de>
Wed, 24 Aug 2022 09:47:05 +0000 (11:47 +0200)
commit9e50aebc813477655e0090b7de6578a7b11816ba
tree0f5632ab3c40114f6d7f2a014ab1680c0519bb87
parent846e5c009e360f0c4fe58ff0d3aee03ebe3ca1a9
Some more predicate analysis TLC

This limits the simple control dep also to the cd_root plus avoids
filling the lazily computed PHI def predicate in the early out path
which would leave it not simplified and normalized if it were
re-used.  It also avoids computing the use predicates when the
post-dominance early out doesn't need it.  It also syncs
predicate::use_cannot_happen with init_from_phi_def, adding the
missing PHI edge to the computed chains (the simple control dep
code already adds it).

* gimple-predicate-analysis.cc (predicate::use_cannot_happen):
Do simple_control_dep_chain only up to cd_root, add the PHI
operand edge to the chains like init_from_phi_def does.
(predicate::is_use_guarded): Speedup early out, avoid half-way
initializing the PHI def predicate.
gcc/gimple-predicate-analysis.cc