Source/Packages

Compiler.Planning.Liveness

packages/compiler/planning/src/Compiler/Planning/Liveness.alpha

1,458 lines160 declarations54.8 KiBSHA-256 5734e8062a86

def · lines 961–994

livenessSlotBetter

Full file
961def livenessSlotBetter =
962  (lambda unrestricted candidate : (family LivenessSlot) .
963    (lambda unrestricted current : (family LivenessSlot) .
964      (eliminate
965        LivenessSlot
966        (lambda unrestricted value : (family LivenessSlot) . Nat)
967        candidate
968        (branch
969          LivenessSlotValue
970          candidateOffset
971          candidateCapacity
972          candidateLastUse
973          .
974          (eliminate
975            LivenessSlot
976            (lambda unrestricted value : (family LivenessSlot) . Nat)
977            current
978            (branch
979              LivenessSlotValue
980              currentOffset
981              currentCapacity
982              currentLastUse
983              .
984              (naturalFlagOr
985                (modelWord64LessThan
986                  (stdByteCountValue candidateCapacity)
987                  (stdByteCountValue currentCapacity))
988                (naturalFlagAnd
989                  (modelWord64Equal
990                    (stdByteCountValue candidateCapacity)
991                    (stdByteCountValue currentCapacity))
992                  (modelWord64LessThan
993                    (stdByteCountValue candidateOffset)
994                    (stdByteCountValue currentOffset))))))))))

The compiler supplied declaration spans and resolved links from this source snapshot. This page does not assert that this file belongs to a checked closure.