* Nativecomp disable propagation of pre slot access type check (bug#63710)
* lisp/emacs-lisp/comp.el (comp-add-cond-cstrs): Temporary disable propagation of pre slot access type check.
This commit is contained in:
parent
e6299d2783
commit
c8e527cbee
1 changed files with 13 additions and 13 deletions
|
@ -2548,19 +2548,19 @@ TARGET-BB-SYM is the symbol name of the target block."
|
|||
for insns-seq on (comp-block-insns b)
|
||||
do
|
||||
(pcase insns-seq
|
||||
(`((set ,(and (pred comp-mvar-p) mvar-tested-copy)
|
||||
,(and (pred comp-mvar-p) mvar-tested))
|
||||
(set ,(and (pred comp-mvar-p) mvar-1)
|
||||
(call type-of ,(and (pred comp-mvar-p) mvar-tested-copy)))
|
||||
(set ,(and (pred comp-mvar-p) mvar-2)
|
||||
(call symbol-value ,(and (pred comp-cstr-cl-tag-p) mvar-tag)))
|
||||
(set ,(and (pred comp-mvar-p) mvar-3)
|
||||
(call memq ,(and (pred comp-mvar-p) mvar-1) ,(and (pred comp-mvar-p) mvar-2)))
|
||||
(cond-jump ,(and (pred comp-mvar-p) mvar-3) ,(pred comp-mvar-p) ,bb1 ,bb2))
|
||||
(push `(assume ,mvar-tested ,(make-comp-mvar :type (comp-cstr-cl-tag mvar-tag)))
|
||||
(comp-block-insns (comp-add-cond-cstrs-target-block b bb2)))
|
||||
(push `(assume ,mvar-tested ,(make-comp-mvar :type (comp-cstr-cl-tag mvar-tag) :neg t))
|
||||
(comp-block-insns (comp-add-cond-cstrs-target-block b bb1))))
|
||||
;; (`((set ,(and (pred comp-mvar-p) mvar-tested-copy)
|
||||
;; ,(and (pred comp-mvar-p) mvar-tested))
|
||||
;; (set ,(and (pred comp-mvar-p) mvar-1)
|
||||
;; (call type-of ,(and (pred comp-mvar-p) mvar-tested-copy)))
|
||||
;; (set ,(and (pred comp-mvar-p) mvar-2)
|
||||
;; (call symbol-value ,(and (pred comp-cstr-cl-tag-p) mvar-tag)))
|
||||
;; (set ,(and (pred comp-mvar-p) mvar-3)
|
||||
;; (call memq ,(and (pred comp-mvar-p) mvar-1) ,(and (pred comp-mvar-p) mvar-2)))
|
||||
;; (cond-jump ,(and (pred comp-mvar-p) mvar-3) ,(pred comp-mvar-p) ,bb1 ,bb2))
|
||||
;; (push `(assume ,mvar-tested ,(make-comp-mvar :type (comp-cstr-cl-tag mvar-tag)))
|
||||
;; (comp-block-insns (comp-add-cond-cstrs-target-block b bb2)))
|
||||
;; (push `(assume ,mvar-tested ,(make-comp-mvar :type (comp-cstr-cl-tag mvar-tag) :neg t))
|
||||
;; (comp-block-insns (comp-add-cond-cstrs-target-block b bb1))))
|
||||
(`((set ,(and (pred comp-mvar-p) cmp-res)
|
||||
(,(pred comp-call-op-p)
|
||||
,(and (or (pred comp-equality-fun-p)
|
||||
|
|
Loading…
Add table
Reference in a new issue