Changeset 11583


Ignore:
Timestamp:
01/24/09 18:08:08 (13 years ago)
Author:
ehuelsmann
Message:

Revert change to p2-minus: we can't do this without adding a new LispObject primitive operation,
which I tried, but takes too long for now.

Note: the operation required would be negateAndAdd(int/long), which is easy except

for that you need to add it to all number primitives...

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp

    r11582 r11583  
    68636863              (when (fixnum-type-p type1)
    68646864                (emit 'swap))
    6865               (emit-invokevirtual +lisp-object-class+ "add" '("I") +lisp-object+)
     6865              (emit-invokevirtual +lisp-object-class+ "add"
     6866                                  '("I") +lisp-object+)
    68666867              (fix-boxing representation result-type)
    68676868              (emit-move-from-stack target representation))
     
    69346935              (convert-long representation)
    69356936              (emit-move-from-stack target representation))
    6936              ((or (fixnum-type-p type1) (fixnum-type-p type2))
     6937             ((fixnum-type-p type2)
    69376938        (compile-forms-and-maybe-emit-clear-values
    6938                     arg1 'stack (when (fixnum-type-p type1) :int)
    6939                     arg2 'stack (when (fixnum-type-p type2) :int))
    6940               (when (fixnum-type-p type1)
    6941                 (emit 'swap))
    6942               (emit-invokevirtual +lisp-object-class+ "subtract"
     6939                    arg1 'stack nil
     6940                    arg2 'stack :int)
     6941              (emit-invokevirtual +lisp-object-class+
     6942                                  "subtract"
    69436943                                  '("I") +lisp-object+)
    69446944              (fix-boxing representation result-type)
Note: See TracChangeset for help on using the changeset viewer.