Commit 9a5e67ab authored by rtoy's avatar rtoy
Browse files

Merge changes from snapshot-2008-10.

parent 47ecd607
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -5,7 +5,7 @@
;;; Carnegie Mellon University, and has been placed in the public domain.
;;;
(ext:file-comment
  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/exports.lisp,v 1.271 2008/09/07 00:22:41 rtoy Exp $")
  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/exports.lisp,v 1.271.2.1 2008/10/08 15:17:57 rtoy Exp $")
;;;
;;; **********************************************************************
;;;
@@ -307,7 +307,8 @@
	   #+(or svr4 bsd linux) "O_NDELAY"
	   "CHECK"

	   "UNIX-RECVFROM" "UNIX-SENDTO" "UNIX-SHUTDOWN")
	   "UNIX-RECVFROM" "UNIX-SENDTO" "UNIX-SHUTDOWN"
	   "UNIX-OPENPTY")
  #+(or svr4 linux)
  (:export "EADDRINUSE" "EADDRNOTAVAIL" "EADV" "EAFNOSUPPORT"
	   "EALREADY" "EBADE" "EBADFD" "EBADMSG" "EBADR" "EBADRQC"
+9 −5
Original line number Diff line number Diff line
@@ -5,7 +5,7 @@
;;; Carnegie Mellon University, and has been placed in the public domain.
;;;
(ext:file-comment
  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/unix-glibc2.lisp,v 1.44 2008/09/24 09:42:31 cshapiro Exp $")
  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/unix-glibc2.lisp,v 1.44.2.1 2008/10/08 15:17:57 rtoy Exp $")
;;;
;;; **********************************************************************
;;;
@@ -1272,13 +1272,17 @@ length LEN and type TYPE."

;;; pty.h

(defun unix-openpty (amaster aslave name termp winp)
(defun unix-openpty (name termp winp)
  "Create pseudo tty master slave pair with NAME and set terminal
   attributes according to TERMP and WINP and return handles for both
   ends in AMASTER and ASLAVE."
  (with-alien ((amaster int)
	       (aslave int))
    (values
     (int-syscall ("openpty" (* int) (* int) c-string (* (struct termios))
			     (* (struct winsize)))
	       amaster aslave name termp winp))
		  (addr amaster) (addr aslave) name termp winp)
     amaster aslave)))

#+(or)
(defun unix-forkpty (amaster name termp winp)
+10 −4
Original line number Diff line number Diff line
@@ -5,7 +5,7 @@
;;; Carnegie Mellon University, and has been placed in the public domain.
;;;
(ext:file-comment
  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/disassem.lisp,v 1.54 2008/04/22 20:14:54 rtoy Exp $")
  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/disassem.lisp,v 1.54.6.1 2008/10/08 15:17:58 rtoy Exp $")
;;;
;;; **********************************************************************
;;;
@@ -1815,7 +1815,13 @@
    (write-char (cond ((logbitp bit mask)
		       (if (logbitp bit num) #\1 #\0))
		      ((< bit show) #\x)
		      (t #\space)))))
		      (t #\space)))
    (when (and (zerop (mod bit 8))
	       (/= bit 0))
      ;; Print a vertical bar separating octets to make reading
      ;; easier.  But use a space if we haven't shown anything yet.
      ;; (Preserves spacing.)
      (write-char (if (< bit show) #\| #\space)))))

(defun print-inst-bits (inst)
  (print-masked-binary (inst-id inst)
@@ -1828,12 +1834,12 @@
  (etypecase inst-space
    (null)
    (instruction
     (format t "~vt[~a(~a)~45t" indent
     (format t "~vt[~a(~a)~48t" indent
	     (inst-name inst-space)
	     (inst-format-name inst-space))
     (print-inst-bits inst-space)
     (dolist (inst (inst-specializers inst-space))
       (format t "~%~vt:~a~45t" indent (inst-name inst))
       (format t "~%~vt:~a~48t" indent (inst-name inst))
       (print-inst-bits inst))
     (write-char #\])
     (terpri))
+12 −12
Original line number Diff line number Diff line
@@ -4,7 +4,7 @@
;;; Carnegie Mellon University, and has been placed in the public domain.
;;;
(ext:file-comment
  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/new-genesis.lisp,v 1.84 2008/09/16 19:26:36 rtoy Exp $")
  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/new-genesis.lisp,v 1.84.2.1 2008/10/08 15:17:58 rtoy Exp $")
;;;
;;; **********************************************************************
;;;
@@ -956,17 +956,6 @@
     (or (gethash (descriptor-bits des) *cold-symbols*)
	 (descriptor-bits des)))))

;; Need to handle special symbols specially on sparc and ppc.  The
;; special symbols are undefined_tramp and closure_tramp.  We need to
;; use the current C values of these and not the values in the current
;; running lisp.  Why?  Because new C code may have moved these
;; addresses so we need to use the right values.  We get worldbuild
;; issues if we use the old values that don't match.
(defun lookup-special-symbol (name)
  (or (gethash name *cold-foreign-symbol-table* nil)
      (lookup-foreign-symbol (vm::extern-alien-name name)
			     #+(or sparc ppc) :data)))
  
(defun cold-fdefinition-object (name &optional leave-fn-raw)
  (let ((hash (extract-fdefn-name name)))
    (or (gethash hash *fdefn-objects*)
@@ -2074,6 +2063,17 @@
	 (warn "Undefined foreign symbol: ~S" name)
	 0)))))

;; Need to handle special symbols specially on sparc and ppc.  The
;; special symbols are undefined_tramp and closure_tramp.  We need to
;; use the current C values of these and not the values in the current
;; running lisp.  Why?  Because new C code may have moved these
;; addresses so we need to use the right values.  We get worldbuild
;; issues if we use the old values that don't match.
(defun lookup-special-symbol (name)
  (or (gethash name *cold-foreign-symbol-table* nil)
      (lookup-foreign-symbol (vm::extern-alien-name name)
			     #+(or sparc ppc) :data)))

(defvar *cold-linkage-table* (make-array 8192 :adjustable t :fill-pointer 0))
(defvar *cold-foreign-hash* (make-hash-table :test #'equal))

+2 −0
Original line number Diff line number Diff line
@@ -85,6 +85,8 @@ New in this release:
    - Fixed bug on sparc where C-c sometimes causes a segfault.  We
      now handle the case where siginfo_t is NULL, which can also
      happen on other architectures.
    - The interpreter catches invalid EVAL-WHEN situations just like
      the compiler, instead of silently ignoring them.

  * Trac Tickets:
    - #16: Read-time hash-table issue
Loading