]> git.eshelyaron.com Git - emacs.git/commit
Add new cond-rw pass to have forward propagation track cond branches
authorAndrea Corallo <akrl@sdf.org>
Tue, 27 Oct 2020 19:40:55 +0000 (19:40 +0000)
committerAndrea Corallo <akrl@sdf.org>
Sun, 1 Nov 2020 14:17:00 +0000 (15:17 +0100)
commit42970cceb9b15212f1a2a28a4595efc8c960f929
treed56d387d21dc96e1a65e173c1f667161832ceca9
parent047fe3292d2f102c9aed4dc305de165b627bcddd
Add new cond-rw pass to have forward propagation track cond branches

Add a new pass to rewrite conditional branches.  This is introducing
and placing a new LIMPLE operator 'assume' in use by fwprop to
propagate conditional branch test informations on target basic blocks.

* lisp/emacs-lisp/comp.el (comp-passes): Add `comp-cond-rw'.
(comp-limple-assignments): Add `assume' operator.
(comp-emit-assume, comp-cond-rw-target-slot, comp-cond-rw-func)
(comp-cond-rw): Add new functions.
(comp-fwprop-insn): Update to pattern match `assume' insns.
* src/comp.c (emit_limple_insn): Add for `assume'.
(syms_of_comp): Define 'Qassume' symbol.
lisp/emacs-lisp/comp.el
src/comp.c