diff --git a/basis/compiler/cfg/debugger/debugger.factor b/basis/compiler/cfg/debugger/debugger.factor index 0017c61564..db724525dc 100644 --- a/basis/compiler/cfg/debugger/debugger.factor +++ b/basis/compiler/cfg/debugger/debugger.factor @@ -81,9 +81,9 @@ M: insn insn. tuple>array but-last [ : cfgs. ( cfgs -- ) [ nl ] [ cfg. ] interleave ; -: ssa. ( quot -- ) test-ssa cfgs. ; -: flat. ( quot -- ) test-flat cfgs. ; -: regs. ( quot -- ) test-regs cfgs. ; +: ssa. ( quot/word -- ) test-ssa cfgs. ; +: flat. ( quot/word -- ) test-flat cfgs. ; +: regs. ( quot/word -- ) test-regs cfgs. ; ! Prettyprinting : pprint-loc ( loc word -- ) > pprint* block> ; diff --git a/basis/compiler/cfg/linear-scan/resolve/resolve.factor b/basis/compiler/cfg/linear-scan/resolve/resolve.factor index 01ab16a6b1..2bc101a50a 100644 --- a/basis/compiler/cfg/linear-scan/resolve/resolve.factor +++ b/basis/compiler/cfg/linear-scan/resolve/resolve.factor @@ -10,9 +10,9 @@ kernel locals make namespaces sequences ; IN: compiler.cfg.linear-scan.resolve TUPLE: location -{ reg read-only } -{ rep read-only } -{ reg-class read-only } ; + { reg read-only } + { rep read-only } + { reg-class read-only } ; : ( reg rep -- location ) dup reg-class-of location boa ; diff --git a/basis/compiler/cfg/stack-frame/stack-frame.factor b/basis/compiler/cfg/stack-frame/stack-frame.factor index 88b90caefb..11f1d8be98 100644 --- a/basis/compiler/cfg/stack-frame/stack-frame.factor +++ b/basis/compiler/cfg/stack-frame/stack-frame.factor @@ -4,14 +4,14 @@ USING: accessors kernel math namespaces ; IN: compiler.cfg.stack-frame TUPLE: stack-frame -{ params integer } -{ allot-area-size integer } -{ allot-area-align integer } -{ spill-area-size integer } -{ spill-area-align integer } -{ total-size integer } -{ allot-area-base integer } -{ spill-area-base integer } ; + { params integer } + { allot-area-size integer } + { allot-area-align integer } + { spill-area-size integer } + { spill-area-align integer } + { total-size integer } + { allot-area-base integer } + { spill-area-base integer } ; : (stack-frame-size) ( stack-frame -- n ) [ spill-area-base>> ] [ spill-area-size>> ] bi + ; diff --git a/basis/compiler/constants/constants.factor b/basis/compiler/constants/constants.factor index b0098982c5..f73b4634e9 100644 --- a/basis/compiler/constants/constants.factor +++ b/basis/compiler/constants/constants.factor @@ -29,11 +29,16 @@ CONSTANT: deck-bits 18 : segment-start-offset ( -- n ) 0 bootstrap-cells ; inline : segment-end-offset ( -- n ) 2 bootstrap-cells ; inline -! Offsets in vm struct -: vm-context-offset ( -- n ) 0 bootstrap-cells ; inline -: vm-spare-context-offset ( -- n ) 1 bootstrap-cells ; inline -: vm-signal-handler-addr-offset ( -- n ) 8 bootstrap-cells ; inline -: vm-fault-flag-offset ( -- n ) 9 bootstrap-cells ; inline +! Offsets in vm struct. Should be kept in sync with: +! vm/vm.hpp +: vm-context-offset ( -- n ) + 0 bootstrap-cells ; inline +: vm-spare-context-offset ( -- n ) + 1 bootstrap-cells ; inline +: vm-signal-handler-addr-offset ( -- n ) + 8 bootstrap-cells ; inline +: vm-fault-flag-offset ( -- n ) + 9 bootstrap-cells ; inline : vm-special-object-offset ( n -- offset ) bootstrap-cells 10 bootstrap-cells + ; diff --git a/basis/vm/vm.factor b/basis/vm/vm.factor index 5ba2a6e6d8..9bcda290fb 100644 --- a/basis/vm/vm.factor +++ b/basis/vm/vm.factor @@ -27,6 +27,19 @@ STRUCT: zone { end cell_t } { size cell_t } ; +! dispatch-statistics should be kept in sync with: +! vm/dispatch.hpp +STRUCT: dispatch-statistics + { megamorphic-cache-hits cell_t } + { megamorphic-cache-misses cell_t } + + { cold-call-to-ic-transitions cell_t } + { ic-to-pic-transitions cell_t } + { pic-to-mega-transitions cell_t } + + { pic-tag-count cell_t } + { pic-tuple-count cell_t } ; + STRUCT: vm { ctx context* } { spare-ctx context* } @@ -86,19 +99,6 @@ STRUCT: gc-event { compaction-time cell_t } { temp-time ulonglong } ; -! dispatch-statistics should be kept in sync with: -! vm/dispatch.hpp -STRUCT: dispatch-statistics -{ megamorphic-cache-hits cell_t } -{ megamorphic-cache-misses cell_t } - -{ cold-call-to-ic-transitions cell_t } -{ ic-to-pic-transitions cell_t } -{ pic-to-mega-transitions cell_t } - -{ pic-tag-count cell_t } -{ pic-tuple-count cell_t } ; - ! gc-info should be kept in sync with: ! vm/gc_info.hpp STRUCT: gc-info