Skip to content
  1. Sep 01, 2012
    • Raymond Toy's avatar
      Clean up RCS ids · eeab7066
      Raymond Toy authored
       * Get rid of the RCS Header stuff.  They're meaningless in git.
       * Add public domain comment to some of the files if the only comment
         was the RCS header.
      eeab7066
  2. Nov 04, 2011
  3. Sep 24, 2010
  4. Aug 02, 2010
  5. Jul 31, 2010
    • rtoy's avatar
      Some cleanup of the names of main functions for creating executable · 35bcce9b
      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.
      35bcce9b
  6. Jul 30, 2010
    • rtoy's avatar
      First cut at executable images on Darwin/x86. The resulting · dc8b7cc2
      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.
      dc8b7cc2
    • rtoy's avatar
      Some cleanup for Linux executables. The value of the · a5cd2c4f
      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.
      a5cd2c4f
  7. Jul 29, 2010
    • rtoy's avatar
      Change how we build executables for Linux. We no longer need the · 3a882467
      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.
      3a882467
  8. Dec 18, 2009
  9. Sep 28, 2009
  10. Dec 10, 2008
    • rtoy's avatar
      Change how we put the FPU type into the core file. We can't use · 29f1fd98
      rtoy authored
      compile-time options to do this.  The running core file has to tell
      us.
      
      lisp/save.c:
      o Add extra arg to save function to indicate whether the core we're
        saving supports sse2 or not.  Non-zero means sse2.
      o Put the correct indication into the core file.
      
      lisp/save.h:
      o Update declaration of save.
      
      code/save.lisp:
      o Update alien definition for save
      o Pass in the extra parameter for the save routine to indicate if we
        support sse2 or not.
      29f1fd98
  11. Nov 12, 2008
  12. Dec 07, 2007
  13. Aug 15, 2007
  14. Jul 08, 2007
  15. Jul 07, 2007
  16. May 30, 2007
    • rtoy's avatar
      This checkin adds some debugging code for the x86 heap corruption · f22fe508
      rtoy authored
      issue and also works around the heap corruption.  These are enabled if
      DEBUG_BAD_HEAP is #defined.
      
      gencgc.c:
      o Make print_ptr and verify_gc non-static so they can be used
        elsewhere.
      
      lisp.c:
      o Call verify_gc at startup (if enabled) so we can see the heap
        corruption.
      
      save.c:
      o Add debugging prints and stuff to see what's going on, if enabled.
      o The workaround is to skip over the call to
        update_dynamic_space_free_pointer in save().  See the comments there
        for more info.
      f22fe508
  17. Sep 15, 2005
  18. Sep 06, 2005
  19. Jul 08, 2004
  20. Jul 07, 2004
    • rtoy's avatar
      Fix more compiler warnings: · 0ac2c885
      rtoy authored
      * backtrace.c, save.c:  fprintf warnings.
      * interrupt.h: Declare build_fake_control_stack_frame and
        interrupt_handle_space_overflow.
      * os-common.c: Include interrupt.h to define
        build_fake_control_stack_frame.
      * parse.c, runprog.c, search.c:  Include some standard system headers
        to get rid of undefined function warnings.
      0ac2c885
  21. Aug 22, 2003
  22. Oct 27, 2000
  23. Nov 25, 1997
  24. Jan 21, 1997
  25. Oct 27, 1994
  26. Feb 11, 1994
  27. May 04, 1993
  28. Apr 28, 1993
  29. Jan 13, 1993
  30. Jul 28, 1992