Merged non-descriptor changes:
revision 1.7.1.4 date: 90/04/13 12:43:56; author: ram; state: Exp; lines added/del: 196/115 Changed DEFINE-STORAGE-CLASS to give each SC a self-load cost of 0. Fixed it to set *META-SC-NUMBERS* at load time as well as at compile time. Souped up DEFINE-MOVE-VOP to implicitly define moves for all SC pairs that can be moved with use of load functions. Added support for the new :MOVE-ARGS option. Fixed up load function computation a bit. Folded the SCs which share a load function together. Added backward compatibility for the old :SCS and :TYPE options to the :TEMPORARY option. Fixed arg restriction computation. Fixed DO-ENVIRONMENT-IR2-BLOCKS and DO-LIVE-TNs. ---------------------------- revision 1.7.1.3 date: 90/04/02 15:24:52; author: ram; state: Exp; lines added/del: 29/17 Frobbed the syntax to DEFINE-MOVE-FUNCTION to indent better. Changed DO-LIVE-TNS to iterate over :MORE TNs properly, rather than ignoring them. We need this now that DO-LIVE-TNS is used in INIT-LIVE-TNS. ---------------------------- revision 1.7.1.2 date: 90/03/27 13:01:07; author: ram; state: Exp; lines added/del: 453/218 Big changes for new non-descriptor support. New DEFINE-STORAGE-CLASS options: :SAVE-P, :ALTERNATE-SCS, :CONSTANT-SCS. SB name NUMBER-STACK has magic significance. New interfaces DEFINE-MOVE-FUNCTION and DEFINE-MOVE-VOP. Flushed PRIMITIVE-SUBTYPEP, PRIMITIVE-TYPE-UNION. Flushed :MOVE, :COERCE-TO-T and :COERCE-FROM-T options to PRIMITIVE-TYPE-VOP. (only :CHECK remains.) Flushed DEFINE-MOVE-COSTS and DEFINE-SAVE-SCS. Flushed support for temps restricted to multiple SCs temporary primitive types. :SCS is flushed in favor of :SC. Flushed support for NORMAL temps (i.e. not either wired or restricted.) :SC is now required for temps. Moved operand loading back inside the generator function, and allow loading to be conditionalized by the :LOAD-IF option. Allow the load-TN to be accessed with the :LOAD-TN option. Allow :FROM (:TO) to be specified in results (arguments). Dump load-scs vectors instead of restriction bit-vectors. This contains the additional info of what SCs can be loaded by load function and what SC to load into. Compute operand costs from the load-function costs + the costs for any move/coerce VOPs applicable. Added support for the new :OR and :CONSTANT operand restrictions. Allow :NOTE to be NIL (meaning don't give efficiency note, overriding any inherited note.) ---------------------------- revision 1.7.1.1 date: 90/03/06 11:08:02; author: ram; state: Exp; lines added/del: 71/117 Start hacking on improved support for non-descriptor values.
Loading
Please register or sign in to comment