X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcompiler%2Fppc%2Fvm.lisp;h=1a7c61bd3457fe8d3d01e39d34617e3f108471ce;hb=a2ff6543c79752bfe42578f794bda1c28167fd10;hp=dbc2fa39ccea58b048fd8039d44f954b09612938;hpb=cb296ae5a022a5b0f1fd573584301b0d2a9493f9;p=sbcl.git diff --git a/src/compiler/ppc/vm.lisp b/src/compiler/ppc/vm.lisp index dbc2fa3..1a7c61b 100644 --- a/src/compiler/ppc/vm.lisp +++ b/src/compiler/ppc/vm.lisp @@ -272,7 +272,8 @@ (sc-number-or-lose 'zero)) (null (sc-number-or-lose 'null)) - ((or fixnum system-area-pointer character) + ((or (integer #.sb!xc:most-negative-fixnum #.sb!xc:most-positive-fixnum) + system-area-pointer character) (sc-number-or-lose 'immediate)) (symbol (if (static-symbol-p value) @@ -330,21 +331,4 @@ (non-descriptor-stack (format nil "NS~D" offset)) (constant (format nil "Const~D" offset)) (immediate-constant "Immed")))) - -;;; The loader uses this to convert alien names to the form they -;;; occur in the symbol table. - -(defun extern-alien-name (name) - (declare (type string name)) - ;; Darwin is non-ELF, and needs a _ prefix. The other (ELF) ports - ;; currently don't need any prefix. - (flet ((maybe-prefix (name) - #!+darwin (concatenate 'simple-base-string "_" name) - #!-darwin name)) - (typecase name - (simple-base-string (maybe-prefix name)) - (base-string (coerce (maybe-prefix name) 'simple-base-string)) - (t - (handler-case (coerce (maybe-prefix name) 'simple-base-string) - (type-error () - (error "invalid external alien name: ~S" name))))))) +