Source/Packages

Compiler.Planning.VA

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

590 lines101 declarations22.4 KiBSHA-256 1df69a11644a

def · lines 197–219

vaAlignUp

Full file
197def vaAlignUp =
198  (lambda unrestricted value : (family ModelWord64) .
199    (lambda unrestricted alignment : (family VAAlignment) .
200      (app
201        (lambda unrestricted alignmentBytes : (family ModelWord64) .
202          (app
203            (lambda unrestricted alignmentMask : (family ModelWord64) .
204              (eliminate
205                ModelWord64CheckedResult
206                (lambda unrestricted result : (family ModelWord64CheckedResult) .
207                  (family VAAlignResult))
208                (modelWord64AddChecked value alignmentMask)
209                (branch
210                  ModelWord64CheckedSucceeded
211                  candidate
212                  .
213                  (constructor
214                    VAAlignResult
215                    VAAligned
216                    (modelWord64And candidate (modelWord64Complement alignmentMask))))
217                (branch ModelWord64CheckedFailed error . (constructor VAAlignResult VAAlignFailed))))
218            (modelWord64Subtract alignmentBytes modelWord64One)))
219        (stdByteAlignmentValue (vaAlignmentBytes alignment)))))

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.