- Aug 13, 2010
-
-
rtoy authored
-
- Aug 09, 2010
-
-
rtoy authored
-
- Aug 06, 2010
-
-
rtoy authored
-
- Aug 05, 2010
-
-
rtoy authored
-
- Aug 04, 2010
- Aug 03, 2010
- Aug 02, 2010
-
-
rtoy authored
-
rtoy authored
-
rtoy authored
lisp/elf.c: lisp/mach-o.c: o Remove obj_cleanup function. lisp/save.c: o Don't call obj_cleanup anymore (because it doesn't exist.) toosl/linker-x86.sh: o Remove CORRO.o CORSTA.o CORDYN.o on exit.
-
rtoy authored
compiler options will work with gcc and produce a working executable.
-
rtoy authored
-
agoncharov authored
-
- Aug 01, 2010
-
-
rtoy authored
-
rtoy authored
-
rtoy authored
-
rtoy authored
command.
-
agoncharov authored
-
agoncharov authored
-
agoncharov authored
-
rtoy authored
too. (It's already applied to the other builds.)
-
- Jul 31, 2010
-
-
rtoy authored
let's update the fasl version to 20b. To build this, use boot-2010-07-1-cross as the cross-compile script and -B src/bootfiles/20a/boot-2010-07-1.lisp for cross-build-world.sh. If there are any restarts, choose the clobber-it restart. bootfiles/20a/boot-20b.lisp: o Bootstrap the change to fasl version 20b. bootfiles/20a/boot-2010-07-1.lisp: o Load boot-20b.lisp. compiler/byte-comp.lisp: o Update byte-fasl-file-version to 20b.
-
rtoy authored
-
rtoy authored
o Give example of how to start an executable image. o Document the ld-library-path, modules, and ext-formats searc-lists.
-
rtoy authored
error messages about being unable being unable to read zones for malloc. Don't know if that's a bug in vmmap or not, but that doesn't sound good, and the message go away if we define seg addresses again.
-
rtoy authored
address of the core sections. In map_core_sections, we can map them to the correct addresses, just like we do on Solaris. lisp/elf.c: o Mmap the Lisp core sections with the correct address, not using the one in the executable itself, just like on Solaris. lisp/mach-o.c: o Add the array of addresses of the dynamic, static, and read-only spaces. o Mmap the Lisp core sections with the correct address, not using the one in the executable itself, just like on Solaris. o Small update to print out the names of the spaces, just like for elf files. tools/linker-x86.sh: o Don't need to tell the linker the starting addresses of the sections anymore for Linux and Darwin. map_core_sections handles that.
-
rtoy authored
-
rtoy authored
Darwin. lisp/elf.h: o Solaris can use linux-x86.sh too. (Need to rename this someday!) lisp/elf.c: o Use same command line for sparc as for linux. lisp/lisp.c: o Setup up initial_function the same way as on linux. tools/linker-x86.sh: o Add -rdynamic or -Bdynamic as needed. o Add support for Solaris using Sun C.
-
rtoy authored
-
rtoy authored
o Disable all of those debugging prints. o Add ability to enable those debugging prints if desired. (May go a way some day.) o Get rid of some compiler warnings. o Get rid of the global eh variable; it's not required to be global.
-
rtoy authored
images. lisp/elf.c: o Change write_elf_object, elf_cleanup, and elf_run_linker to write_space_object, obj_cleanup, and obj_run_linker. lisp/elf.h: o Update so that this can used for both elf and mach-o. Not great, but I don't want to rename this file. lisp/mach-o.c: o Include elf.h o Remove items that are defined in elf.h. o Change function names from elf to mach_o. lisp/save.c: o Update names to new ones.
-
- Jul 30, 2010
-
-
rtoy authored
executable appears to work! bootfiles/20a/boot-2010-07-1.lisp: o Add :executable for darwin/x86. code/bsd-os.lisp: o Make :elf and :mach-o runtime features too. o Register :executable of :executable is defined. lisp/Config.x86_darwin: o Need mach-o.c o Add exec-final.c lisp/lisp.c: o Don't include elf.h if we're on Darwin since Darwin uses Mach-O, not ELF. o For Darwin, we get the initial function address from initial_function_addr, not from &initial_function_addr, like for Linux. lisp/save.c o Don't include libgen.h and elf.h on Darwin. tools/linker-x86.sh: o Update to support Darwin. tools/make-main-dist.sh: o Add support for executables on Darwin. lisp/mach-o.c: o Initial support for writing Mach-O files for the Lisp spaces. o Initial support for reading a Mach-O executable to find and map the Lisp spaces.
-
rtoy authored
initial_function_addr is saved to a file and compiled in when linking the executable. This makes building the executable more portable. All that's need is a way for gcc to link all of lisp.a and to set the starting address of some segments. lisp/lisp.c: o For Linux, use the value of initial_function_addr instead of the address. tools/linker-x86.sh: o Disable -x option, unless CMU_DEBUG_LINKER is not empty. o Instead of using --defsym feature of GNU ld, save the initial function address in a file to be compiled when making the executable. lisp/elf.c: o Remove printing of the sizeof elf headers o Print some info about the object being written and print somewhat neatly. lisp/save.c: o Rework printing info of the core objects. Let write_elf_object do it.
-
- Jul 29, 2010
-
-
rtoy authored
Could probably also work for FreeBSD, but changes not done yet.
-
rtoy authored
hairy and fragile linker script. Instead, we can use regular old gcc to do what we need. (Should also work for FreeBSD, but not yet implemented.) lisp/elf.c: o Include validate.h so we can get the starting addresses of the read-only, static, and dynamic spaces. o Add special case for linux to run the linker script correctly. lisp/elf.h: o There's a separate linker script for Linux. lisp/save.c: o Temporarily don't run elf_cleanup so we can have easier testing/debugging. tools/linker.sh: o Don't need BIFLAG anymore. tools/make-main-dist.sh: o Install linker-x86.sh.
-
rtoy authored
o Define EXEC_FINAL_OBJ for linux, just like we did for Solaris so that we have a nice known good address and value for builtin_image_flag. GNUmakefile: o If EXEC_FINAL_OBJ has a value, remove exec-init.o from the library and add exec-final.o. This makes it independent of the architecture.
-
rtoy authored
having the address of builtin_image_flag set to some (random) address of mapped memory that is non-zero, we add a special file to lisp.a that defines builtin_image_flag to 1. lisp/Config.sparc_common: o Define EXEC_FINAL_OBJ lisp/GNUmakefile: o Make lisp.a depend on EXEC_FINAL_OBJ o On Solaris, add EXEC_FINAL_OBJ to lisp.a. tools/SunOS-cmucl-linker-script: o Remove the line setting the address of builtin_image_flag. tools/linker.sh: o For Solaris, we don't need to define BIFLAG; the builtin_image_flag is automatically set correctly by linking in lisp.a
-