Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2003-03-21 21:34:25 -0800 (Fri, 21 Mar 2003)
Revision: 4211
Log message:

      | Register allocator now adheres to calling convention.
      | We need some work on the spills:
      |     1. The choice of variables to spill is very bad (this
      |        must be affecting us in mcc as well).
      |     2. The MetaPRL spill code needs to be smarter.  Given a
      |        variable "v" to spill, it splits the live range of that
      |        variable by inserting this code in a random location,
      |        then trying to migrate the top move up, and the bottom
      |        move down.
      |
      |           MOV %v, spill
      |           MOV spill, %v
      |
      |        The choice of the location is currently quite bad.
      

Changes  Path
+0 -1 metaprl-branches/lm_libmojave/theories/experimental/compile/Makefile
+41 -43 metaprl-branches/lm_libmojave/theories/experimental/compile/m_ra_live.ml
+16 -15 metaprl-branches/lm_libmojave/theories/experimental/compile/m_ra_main.ml
+23 -10 metaprl-branches/lm_libmojave/theories/experimental/compile/m_ra_type.ml
+23 -10 metaprl-branches/lm_libmojave/theories/experimental/compile/m_ra_type.mli
+23 -10 metaprl-branches/lm_libmojave/theories/experimental/compile/m_ra_type.mlz
+22 -2 metaprl-branches/lm_libmojave/theories/experimental/compile/m_reserve.ml
+8 -0 metaprl-branches/lm_libmojave/theories/experimental/compile/m_theory.ml
+2 -0 metaprl-branches/lm_libmojave/theories/experimental/compile/m_theory.mli
+409 -373 metaprl-branches/lm_libmojave/theories/experimental/compile/m_x86_backend.ml
+4 -0 metaprl-branches/lm_libmojave/theories/experimental/compile/m_x86_backend.mli
+29 -9 metaprl-branches/lm_libmojave/theories/experimental/compile/m_x86_coalesce.ml
+1 -0 metaprl-branches/lm_libmojave/theories/experimental/compile/m_x86_coalesce.mli
+114 -66 metaprl-branches/lm_libmojave/theories/experimental/compile/m_x86_codegen.ml
+1 -1 metaprl-branches/lm_libmojave/theories/experimental/compile/m_x86_frame.ml
+1 -1 metaprl-branches/lm_libmojave/theories/experimental/compile/m_x86_frame.mli
+4 -5 metaprl-branches/lm_libmojave/theories/experimental/compile/m_x86_regalloc.ml
+172 -64 metaprl-branches/lm_libmojave/theories/experimental/compile/m_x86_spill.ml
+6 -4 metaprl-branches/lm_libmojave/theories/experimental/compile/m_x86_spill.mli
Deleted metaprl-branches/lm_libmojave/theories/experimental/compile/m_x86_util.ml
Deleted metaprl-branches/lm_libmojave/theories/experimental/compile/m_x86_util.mli
+74 -60 metaprl-branches/lm_libmojave/theories/experimental/compile/x86_asm.ml
+31 -35 metaprl-branches/lm_libmojave/theories/experimental/compile/x86_asm.mli
+19 -16 metaprl-branches/lm_libmojave/theories/experimental/compile/x86_inst_type.mlz
+242 -121 metaprl-branches/lm_libmojave/theories/experimental/compile/x86_term.ml
+2 -2 metaprl-branches/lm_libmojave/theories/experimental/compile/x86_term.mli