Changeset 5045


Ignore:
Timestamp:
Aug 28, 2006, 3:53:02 AM (18 years ago)
Author:
Gary Byers
Message:

New fasl ops for new string encodings.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ccl/xdump/faslenv.lisp

    r4771 r5045  
    3838  faslstate.fasldispatch)
    3939
    40 ; loader framework istruct
     40;;; loader framework istruct
    4141(def-accessors (faslapi) %svref
    4242  ()
     
    5555  faslapi.fasl-read-n-bytes)
    5656
    57 (defconstant numfaslops 64 "Number of fasl file opcodes, roughly")
     57(defconstant numfaslops 80 "Number of fasl file opcodes, roughly")
    5858(defconstant $fasl-epush-bit 7)
    5959(defconstant $fasl-file-id #xff00)
     
    9696(defconstant $fasl-veref 25)            ;<index:count> Get the value from an etab slot.
    9797(defconstant $fasl-fixnum8 26)          ;<high:long><low:long> Make an 8-byte fixnum.
    98 (defconstant $fasl-symfn 27)            ;<sym:expr> returns #'sym.
     98(defconstant $fasl-symfn 27)            ;<sym:expr>
    9999(defconstant $fasl-eval 28)             ;<expr> Eval <expr> and return value.
    100100(defconstant $fasl-u16-vector 29)       ;<count> Make a (SIMPLE-ARRAY (UNSIGNED-BYTE 16) <count>)
     
    102102(defconstant $fasl-vintern 31)          ;<vstring> Intern in current pkg.
    103103(defconstant $fasl-vpkg-intern 32)      ;<pkg:expr><vstring> Make a sym in pkg.
    104 (defconstant $fasl-vpkg 33)             ;<string> Returns the package of given name
     104(defconstant $fasl-vpkg 33)             ;<vstring> Returns the package of given name
    105105(defconstant $fasl-vgvec 34)            ;<subtype:byte><n:count><n exprs>
    106106(defconstant $fasl-defun 35)            ;<fn:expr><doc:expr>
     
    129129(defconstant $fasl-s64 59)              ;<8bytes> Make a (SIGNED-BYTE 64)
    130130(defconstant $fasl-vpkg-intern-special 60) ;<pkg:expr><vstring> Make a sym in pkg, ensure that it has a special binding index
    131 (defconstant $fasl-vmksym-special 61)      ;<vstring> Make an uninterned symbol, ensure special binding index
     131(defconstant $fasl-vmksym-special 61)   ;<vstring> Make an uninterned symbol, ensure special binding index
     132(defconstant $fasl-nvmksym-special 62)  ;<nvstring> Make an uninterned symbol, ensure special binding index
     133(defconstant $fasl-nvpkg-intern-special 63) ;<pkg:expr><nvstring> Make a sym in pkg, ensure that it has a special binding index
     134(defconstant $fasl-nvintern-special 64)  ;<nvstring> Intern in current pkg, ensure that it has a special binding index
     135(defconstant $fasl-nvpkg 65)            ;<vstring> Returns the package of given name
     136(defconstant $fasl-nvpkg-intern 66)     ;<nvstring> Intern in current pkg.
     137(defconstant $fasl-nvintern 67)         ;<pkg:expr><nvstring> Make a sym in pkg.
     138(defconstant $fasl-nvmksym 68)          ;<nvstring> Make a string
     139(defconstant $fasl-nvstr 69)            ;<nvstring> Make an uninterned symbol
    132140
    133 ;;; <string> means <size><size bytes>
     141
     142;;; <string> means <size><size bytes> (this is no longer used)
    134143;;; <size> means either <n:byte> with n<#xFF, or <FF><n:word> with n<#xFFFF or
    135144;;;   <FFFF><n:long>
     145;;; <count> is a variable-length encoding of an unsigned integer, written
     146;;;  7 bits per octet, the least significant bits written first and the most
     147;;;  significant octet having bit 7 set, so 127 would be written as #x00 and
     148;;;  128 as #x00 #x81
     149;;; <vstring> is a <count> (string length) followed by count octets of
     150;;; 8-bit charcode data.
     151;;; <nvstring> is a <count> (string length) followd by count <counts> of
     152;;;  variable-length charcode data.  This encodes ASCII/STANDARD-CHAR as
     153;;;  compactly as the <vstring> encoding, which should probably be deprecated.
     154
     155
    136156
    137157(defconstant $fasl-end #xFF)    ;Stop reading.
Note: See TracChangeset for help on using the changeset viewer.