|
LLZK 2.1.1
An open-source IR for Zero Knowledge (ZK) circuits
|
Namespaces | |
| namespace | detail |
Classes | |
| class | ConditionOpInterface |
| class | ContractEndOp |
| class | ContractEndOpAdaptor |
| class | ContractEndOpGenericAdaptor |
| class | ContractOp |
| class | ContractOpAdaptor |
| class | ContractOpGenericAdaptor |
| class | EnsureComputeOp |
| class | EnsureComputeOpAdaptor |
| class | EnsureComputeOpGenericAdaptor |
| class | EnsureConstrainOp |
| class | EnsureConstrainOpAdaptor |
| class | EnsureConstrainOpGenericAdaptor |
| struct | ForbiddenPreconditionInfluenceInfo |
| Summary of forbidden precondition influence along with representative source locations for each forbidden kind. More... | |
| class | IncludeOp |
| class | IncludeOpAdaptor |
| class | IncludeOpGenericAdaptor |
| class | PostconditionOpInterface |
| class | PreconditionOpInterface |
| class | RequireComputeOp |
| class | RequireComputeOpAdaptor |
| class | RequireComputeOpGenericAdaptor |
| class | RequireConstrainOp |
| class | RequireConstrainOpAdaptor |
| class | RequireConstrainOpGenericAdaptor |
| class | VerifDialect |
Enumerations | |
| enum class | ForbiddenPreconditionInfluence : uint8_t { None = 0 , StructMember = 1 << 0 , FunctionReturn = 1 << 1 } |
| Sources of information that are not allowed in contract preconditions. More... | |
Functions | |
| llvm::hash_code | hash_value (const ForbiddenPreconditionInfluenceInfo &info) |
| ForbiddenPreconditionInfluence | operator| (ForbiddenPreconditionInfluence lhs, ForbiddenPreconditionInfluence rhs) |
| ForbiddenPreconditionInfluence & | operator|= (ForbiddenPreconditionInfluence &lhs, ForbiddenPreconditionInfluence rhs) |
| bool | any (ForbiddenPreconditionInfluence influence) |
| Return true when the influence set contains at least one classification. | |
| bool | hasInfluence (ForbiddenPreconditionInfluence influence, ForbiddenPreconditionInfluence flag) |
| Return true when influence contains the requested flag. | |
| ForbiddenPreconditionInfluenceInfo | mergeInfluenceInfo (ForbiddenPreconditionInfluenceInfo lhs, const ForbiddenPreconditionInfluenceInfo &rhs) |
| Merge two forbidden-influence summaries, preserving the first known source location for each forbidden kind. | |
| template<typename T, typename... Args> | |
| ForbiddenPreconditionInfluenceInfo | mergeInfluenceInfo (const T &first, const T &next, Args... others) |
| ForbiddenPreconditionInfluenceInfo | analyzeForbiddenPreconditionInfluenceInfo (mlir::ModuleOp module, verif::ContractOp contract, mlir::Value value) |
| Analyze whether a contract value depends on forbidden precondition sources and recover representative source locations for any forbidden influence. | |
| ForbiddenPreconditionInfluenceInfo | analyzeForbiddenPreconditionOpInfluenceInfo (mlir::ModuleOp module, verif::ContractOp contract, verif::PreconditionOpInterface preCondOp) |
| Analyze whether a precondition op depends on forbidden sources, including both its condition operand and enclosing SCF control ancestors. | |
| ForbiddenPreconditionInfluence | analyzeForbiddenPreconditionInfluence (mlir::ModuleOp module, verif::ContractOp contract, mlir::Value value) |
| Analyze whether a contract value depends on forbidden precondition sources. | |
| ForbiddenPreconditionInfluenceInfo | analyzeForbiddenPreconditionCallableResultInfo (mlir::ModuleOp module, mlir::CallableOpInterface callableOp, llvm::ArrayRef< ForbiddenPreconditionInfluenceInfo > argInfluences, unsigned resultNumber) |
| Analyze whether a callable result depends on forbidden precondition sources under a caller-provided argument influence summary. | |
| ForbiddenPreconditionInfluence | analyzeForbiddenPreconditionCallableResult (mlir::ModuleOp module, mlir::CallableOpInterface callableOp, llvm::ArrayRef< ForbiddenPreconditionInfluenceInfo > argInfluences, unsigned resultNumber) |
| Analyze whether a callable result depends on forbidden precondition sources under a caller-provided argument influence summary. | |
| detail::IncludedContractSummary | analyzeForbiddenIncludedContractSummary (mlir::ModuleOp module, verif::ContractOp calleeContract, llvm::ArrayRef< ForbiddenPreconditionInfluenceInfo > argInfluences) |
| Analyze whether including a contract with caller-provided operand influence summaries would trigger a forbidden precondition failure in the callee. | |
| detail::IncludedContractSummary | analyzeForbiddenIncludedOpSummary (mlir::ModuleOp module, verif::ContractOp contract, verif::IncludeOp includeOp) |
| Analyze whether a specific include op triggers forbidden preconditions in the callee, including both caller operand bindings and caller-side SCF control ancestors. | |
|
strong |
Sources of information that are not allowed in contract preconditions.
These are generally results of the target, so having preconditions over them doesn't make sense.
| Enumerator | |
|---|---|
| None | |
| StructMember | |
| FunctionReturn | |
Definition at line 36 of file ForbiddenPreconditionInfluence.h.
|
inline |
Analyze whether including a contract with caller-provided operand influence summaries would trigger a forbidden precondition failure in the callee.
Definition at line 385 of file ForbiddenPreconditionInfluence.h.
|
inline |
Analyze whether a specific include op triggers forbidden preconditions in the callee, including both caller operand bindings and caller-side SCF control ancestors.
Definition at line 397 of file ForbiddenPreconditionInfluence.h.
|
inline |
Analyze whether a callable result depends on forbidden precondition sources under a caller-provided argument influence summary.
Definition at line 373 of file ForbiddenPreconditionInfluence.h.
|
inline |
Analyze whether a callable result depends on forbidden precondition sources under a caller-provided argument influence summary.
Definition at line 362 of file ForbiddenPreconditionInfluence.h.
|
inline |
Analyze whether a contract value depends on forbidden precondition sources.
Definition at line 354 of file ForbiddenPreconditionInfluence.h.
|
inline |
Analyze whether a contract value depends on forbidden precondition sources and recover representative source locations for any forbidden influence.
Definition at line 339 of file ForbiddenPreconditionInfluence.h.
|
inline |
Analyze whether a precondition op depends on forbidden sources, including both its condition operand and enclosing SCF control ancestors.
Definition at line 347 of file ForbiddenPreconditionInfluence.h.
|
inline |
Return true when the influence set contains at least one classification.
Definition at line 84 of file ForbiddenPreconditionInfluence.h.
|
inline |
Definition at line 63 of file ForbiddenPreconditionInfluence.h.
|
inline |
Return true when influence contains the requested flag.
Definition at line 90 of file ForbiddenPreconditionInfluence.h.
|
inline |
Definition at line 106 of file ForbiddenPreconditionInfluence.h.
|
inline |
Merge two forbidden-influence summaries, preserving the first known source location for each forbidden kind.
Definition at line 96 of file ForbiddenPreconditionInfluence.h.
|
inline |
Definition at line 71 of file ForbiddenPreconditionInfluence.h.
|
inline |
Definition at line 78 of file ForbiddenPreconditionInfluence.h.