• Andrea Corallo's avatar
    Do not emit assumptions referencing clobbered mvars (bug#46670) · bddd7a2d
    Andrea Corallo authored
    	* lisp/emacs-lisp/comp.el (comp-func): Add `vframe-size' slot.
    	(comp-new-frame): Add `vsize' parameter.
    	(comp-limplify-top-level, comp-limplify-function): Update for new
    	`comp-new-frame'.
    	(comp-maybe-add-vmvar): New function.
    	(comp-add-cond-cstrs): Logic update to emit assumptions not
    	referencing clobbered variables.
    	(comp-place-phis, comp-ssa, comp-ssa-rename-insn)
    	(comp-ssa-rename): Update rename logic to rename also negative
    	slots.
    	(comp-fwprop-insn): Update to handle `(assume mvar mvar)' form.
    	* test/src/comp-tests.el (46670-1): Add testcase.
    	* test/src/comp-test-funcs.el (comp-test-46670-1-f)
    	(comp-test-46670-2-f): New functions.
    bddd7a2d
comp.el 169 KB