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)