Skip to content
Snippets Groups Projects
Commit 3cd77bef authored by rtoy's avatar rtoy
Browse files

Support cross-compiling from x86 to sparc, unicode. Also fixes some

bugs with dumping unicode strings to fasls on a different endian
architecture.  Combined with cross-x86-sparc.lisp, this will
successfully cross-compile from x86 (OSX) to sparc (Solaris).  The
result won't, unfortunately, built itself, but if the callback support
is commented out, the build is successful.  This new build can then be
successfully used to do another build that includes callback support.
don't know what is causing this issue.

compiler/dump.lisp:
o DUMP-DATA-MAYBE-BYTE-SWAPPING needs to byte-swap unicode (16-bit)
  strings.

compiler/generic/new-genesis.lisp:
o STRING-TO-CORE needs to swap the byte order of unicode strings if
  the backend and native backend have different endianness.
o LOAD-CHAR-CODE should load characters based on the backend, not
  native-backend.  (This not used anymore, though?)
o Add new function byte-swap the char codes of a unicode string.
o COLD-LOAD-SYMBOL calls MAYBE-BYTE-SWAP-STRING
o FOP-UNINTERNED-SYMBOL-SAVE, FOP-UNINTERNED-SMALL-SYMBOL-SAVE,
  FOP-STRING, FOP-SMALL-STRING, FOP-FOREIGN-FIXUP,
  and FOP-FOREIGN-DATA-FIXUP need to call MAYBE-BYTE-SWAP-STRING for
  unicode strings.

compiler/ppc/parms.lisp:
compiler/sparc/parms.lisp:
compiler/x86/parms.lisp:
o Initialize backend foreign-linkage space start and entry size
  appropriately.  The target versions are initialized from the backend
  values now too.


lisp/os-common.c:
o Some debugging stuff for foreign linkage data to print out symbol
  names.  Currently ifdef'ed out.
parent 4f4cd1aa
No related branches found
No related tags found
No related merge requests found
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment