diff --git a/src/cmp/cmpform.lsp b/src/cmp/cmpform.lsp index cffea05ea..4e35608df 100644 --- a/src/cmp/cmpform.lsp +++ b/src/cmp/cmpform.lsp @@ -62,9 +62,7 @@ (COMPILER-LET symbols values body) (FUNCTION (GLOBAL/CLOSURE) lambda-form fun-object :single-valued) (C2PRINC object-string-or-char stream-var stream-c1form :side-effects) - (RPLACA (dest-c1form value-c1form) :side-effects) (RPLACD (dest-c1form value-c1form) :side-effects) - (ASSOC!2 fun-symbol args-c1form-list :pure) (SI:STRUCTURE-REF struct-c1form type-name slot-index (:UNSAFE/NIL) :pure) (SI:STRUCTURE-SET struct-c1form type-name slot-index value-c1form :side-effects) diff --git a/src/cmp/cmpfun.lsp b/src/cmp/cmpfun.lsp index 51f9b328a..f8d622f61 100644 --- a/src/cmp/cmpfun.lsp +++ b/src/cmp/cmpfun.lsp @@ -87,23 +87,6 @@ (t (c1funcall (list* '#'APPLY args)))))) -(defun c1rplaca (args) - (check-args-number 'RPLACA args 2 2) - (make-c1form* 'RPLACA :args (c1args* args))) - -(defun c2rplaca (args) - (let* ((*inline-blocks* 0) - (*temp* *temp*) - (args (coerce-locs (inline-args args))) - (x (first args)) - (y (second args))) - (when (safe-compile) - (wt-nl "if (ecl_unlikely(ATOM(" x ")))" - "FEtype_error_cons(" x ");")) - (wt-nl "ECL_CONS_CAR(" x ") = " y ";") - (unwind-exit x) - (close-inline-blocks))) - (defun c1rplacd (args) (check-args-number 'RPLACD args 2 2) (make-c1form* 'RPLACD :args (c1args* args))) @@ -121,35 +104,6 @@ (unwind-exit x) (close-inline-blocks))) -(defun c1assoc (args) - (check-args-number 'ASSOC args 2) - (cond ((endp (cddr args)) - (make-c1form* 'ASSOC!2 :args 'EQL (c1args* args))) - ((and (eq (third args) ':TEST) - (= (length args) 4) ; Beppe - (member (fourth args) '('EQ #'EQ 'EQUAL #'EQUAL - 'EQUALP #'EQUALP 'EQL #'EQL) - :test 'EQUAL)) - (make-c1form* 'ASSOC!2 :args (second (fourth args)) - (c1args* (list (car args) (second args))))) - (t - (c1call-global 'ASSOC args)))) - -(defun c2assoc!2 (fun args) - (let* ((*inline-blocks* 0) - (*temp* *temp*)) - (unwind-exit - (produce-inline-loc (inline-args args) '(T T) '(:object) - (case fun - (eq "ecl_assq(#0,#1)") - (eql "ecl_assql(#0,#1)") - (equal "ecl_assoc(#0,#1)") - (equalp "ecl_assqlp(#0,#1)")) - nil ; side effects? - t - )) - (close-inline-blocks))) - (defun co1nth (args) (and (not (endp args)) (not (endp (cdr args))) @@ -279,14 +233,9 @@ (put-sysprop 'apply 'C1 'c1apply) -;(put-sysprop 'rplaca 'C1 'c1rplaca) -;(put-sysprop 'rplaca 'C2 'c2rplaca) (put-sysprop 'rplacd 'C1 'c1rplacd) (put-sysprop 'rplacd 'C2 'c2rplacd) -(put-sysprop 'assoc 'C1 'c1assoc) -(put-sysprop 'assoc!2 'C2 'c2assoc!2) - (put-sysprop 'nth 'C1CONDITIONAL 'co1nth) (put-sysprop 'nthcdr 'C1CONDITIONAL 'co1nthcdr)