Changeset 12852


Ignore:
Timestamp:
08/02/10 10:48:45 (12 years ago)
Author:
ehuelsmann
Message:

Convert GENERATE-LOADER-FUNCTION to use CLASS-NAMEs
instead of literal strings.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/generic-class-file/abcl/src/org/armedbear/lisp/compile-file.lisp

    r12791 r12852  
    673673  `(case ,expr ,@clauses))))
    674674
     675(defconstant +fasl-classloader+
     676  (jvm::make-class-name "org.armedbear.lisp.FaslClassLoader"))
     677
    675678(defun generate-loader-function ()
    676679  (let* ((basename (base-classname))
     
    681684       :for i :from 1 :to *class-number*
    682685       :collect
    683        (let ((class (%format nil "org/armedbear/lisp/~A_~A" basename i)))
     686       (let* ((class (%format nil "org/armedbear/lisp/~A_~A"
     687                                                basename i))
     688                                (class-name (jvm::make-class-name class)))
    684689         `(,(1- i)
    685690            (jvm::with-inline-code ()
     
    687692        (jvm::emit-invokevirtual jvm::+lisp-object+ "javaInstance"
    688693               nil jvm::+java-object+)
    689         (jvm::emit 'jvm::checkcast "org/armedbear/lisp/FaslClassLoader")
     694        (jvm::emit 'jvm::checkcast +fasl-classloader+)
    690695        (jvm::emit 'jvm::dup)
    691696        (jvm::emit-push-constant-int ,(1- i))
    692         (jvm::emit 'jvm::new ,class)
     697        (jvm::emit 'jvm::new ,class-name)
    693698        (jvm::emit 'jvm::dup)
    694         (jvm::emit-invokespecial-init ,class '())
    695         (jvm::emit-invokevirtual "org/armedbear/lisp/FaslClassLoader" "putFunction"
     699        (jvm::emit-invokespecial-init ,class-name '())
     700        (jvm::emit-invokevirtual +fasl-classloader+
     701                                                         "putFunction"
    696702               (list "I" jvm::+lisp-object+) jvm::+lisp-object+)
    697703        (jvm::emit 'jvm::pop))
Note: See TracChangeset for help on using the changeset viewer.