Optimize sb-bsd-sockets::(get-host-by-name get-host-by-address).
[sbcl.git] / contrib / sb-aclrepl / inspect.lisp
index 6c3e196..cf19fb7 100644 (file)
@@ -326,6 +326,7 @@ The commands are:
     (format stream "~A" (inspected-description object))
     (unless (or *skip-address-display*
                 (eq object *inspect-unbound-object-marker*)
+                (and (= sb-vm::n-word-bits 64) (typep object 'single-float))
                 (characterp object) (typep object 'fixnum))
       (write-string " at #x" stream)
       (format stream (n-word-bits-hex-format)
@@ -567,9 +568,6 @@ position with the label if the label is a string."
 (defmethod inspected-description ((object standard-object))
   (format nil "~W" (class-of object)))
 
-(defmethod inspected-description ((object sb-kernel:funcallable-instance))
-  (format nil "a funcallable-instance of type ~S" (type-of object)))
-
 (defmethod inspected-description ((object function))
   (format nil "~S" object) nil)
 
@@ -658,9 +656,16 @@ cons cells and LIST-TYPE is :normal, :dotted, or :cyclic"
                                  (ref32-hexstr object start))))
 
 (defmethod inspected-description ((object single-float))
-  (description-maybe-internals "single-float ~W" (list object)
-                               "[#x~A]"
-                               (ref32-hexstr object (round sb-vm::n-word-bits 8))))
+  (ecase sb-vm::n-word-bits
+    (32
+     (description-maybe-internals "single-float ~W" (list object)
+                                  "[#x~A]"
+                                  (ref32-hexstr object (round sb-vm::n-word-bits 8))))
+    (64
+     ;; on 64-bit platform, single-floats are not boxed
+     (description-maybe-internals "single-float ~W" (list object)
+                                  "[#x~8,'0X]"
+                                  (ash (sb-kernel:get-lisp-obj-address object) -32)))))
 
 (defmethod inspected-description ((object fixnum))
   (description-maybe-internals
@@ -807,21 +812,12 @@ cons cells and LIST-TYPE is :normal, :dotted, or :cyclic"
   (let ((components (inspected-standard-object-parts object)))
     (list components (length components) :named nil)))
 
-(defmethod inspected-parts ((object sb-kernel:funcallable-instance))
-  (let ((components (inspected-standard-object-parts object)))
-    (list components (length components) :named nil)))
-
 (defmethod inspected-parts ((object condition))
   (let ((components (inspected-standard-object-parts object)))
     (list components (length components) :named nil)))
 
 (defmethod inspected-parts ((object function))
-  (let* ((type (sb-kernel:widetag-of object))
-         (object (if (= type sb-vm:closure-header-widetag)
-                     (sb-kernel:%closure-fun object)
-                     object))
-         (components (list (cons "arglist"
-                               (sb-kernel:%simple-fun-arglist object)))))
+  (let ((components (list (cons "arglist" (sb-kernel:%fun-lambda-list object)))))
     (list components (length components) :named nil)))
 
 (defmethod inspected-parts ((object vector))