* Introduce new RTL expression type CONS-NON-POINTER and change
authorChris Hanson <org/chris-hanson/cph>
Fri, 25 Oct 1991 12:29:56 +0000 (12:29 +0000)
committerChris Hanson <org/chris-hanson/cph>
Fri, 25 Oct 1991 12:29:56 +0000 (12:29 +0000)
commite856270f670ed98812c705b1d749daf5c2b73e65
tree2215abc53814ba4476582dc5b56c9a9ef7503a18
parentc0f2096333e36aace025386e669e739dcc09c7cb
* Introduce new RTL expression type CONS-NON-POINTER and change
  appropriate instances of CONS-POINTER to use the new type.

* Replace RTL expression type @ADDRESS->FLOAT with new type
  OBJECT->FLOAT.

* Introduce new internal switch USE-PRE/POST-INCREMENT?.  Change code
  generation of in-line consing to pay attention to this switch.

* Merge common parts of "machine/make" into new file "base/make".

On MIPS:

* Change code sequence that assigns type codes to assume that the type
  field has a known value.  This eliminates one instruction in every
  type-code assignment.  It assumes that the data segment bits have a
  certain value, but the microcode already does this.

* Cache immediate constants in registers, and remember which registers
  contain which constants.  (This should be improved by noticing when
  arithmetic operations are done on known constants and cacheing the
  results.)

* Set USE-PRE/POST-INCREMENT? to false, saving one instruction in
  every CONS, and multiple instructions in each call to VECTOR.
v7/src/compiler/machines/spectrum/machin.scm
v7/src/compiler/machines/spectrum/make.scm
v7/src/compiler/machines/spectrum/rulflo.scm
v7/src/compiler/machines/spectrum/rulrew.scm