package asli
Interpreter for Arm's Architecture Specification Language (ASL)
Install
Dune Dependency
Authors
Maintainers
Sources
0.2.0.tar.gz
md5=f4581fd209256823fa4d569ac96c8cee
sha512=fd4a74294beb9eeeafa80c9224b5dc30f5e5ebde4d53fa601929d283b6ca72154de313874321774914f738ac6f0d640e59452f7d03cb1db7b3a019b48b82e0d4
doc/asli.libASL/LibASL/Tcheck/class-unifier/index.html
Class Tcheck.unifier
Source
Unifier
This class supports collecting all the constraints introduced while typechecking an expression, checking those constraints and synthesizing a solution.
This is the most complex part of the entire typechecker. Most of that complexity is the result of having to support code like
bits(64) x = ZeroExtend(Ri
);
where the width of the ZeroExtend call is determined by the context that it occurs in.
val mutable renamings : LibASL.Asl_utils.equivalences
val mutable bindings : LibASL.Asl_utils.AST.expr LibASL.Asl_utils.Bindings.t
val mutable constraints : AST.expr list
method fresh : AST.ident
method isFresh : AST.ident -> bool
method addEquality : LibASL.Asl_utils.AST.expr ->
LibASL.Asl_utils.AST.expr ->
unit
method addEqualities : LibASL.Asl_utils.AST.expr list ->
LibASL.Asl_utils.AST.expr list ->
unit
method checkConstraints : AST.expr LibASL.Asl_utils.Bindings.t
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>