File tree Expand file tree Collapse file tree
polymat_permute_bitrev_to_custom
polyvec_basemul_acc_montgomery_cached Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -538,13 +538,26 @@ PROOF_GOTO ?= $(GOTODIR)/$(PROOF)
538538SPACE :=$() $()
539539COMMA :=,
540540
541+ # ###############################################################
542+ # CBMC team recommend that --no-array-field-sensitivity should never be used
543+ # with CBMC 6.9.0 and above when --slice-formula has been specified
544+ ifeq ($(findstring --no-array-field-sensitivity,$(CBMCFLAGS ) ) ,--no-array-field-sensitivity)
545+ $(error CBMC option --no-array-field-sensitivity must not be used with CBMC 6.9.0 and above)
546+ endif
547+
548+ # ###############################################################
549+ # CBMC team recommend that --slice-formula should _always_ be used
550+ # so we reject it here if it is already specified in a per-function Makefile
551+ ifeq ($(findstring --slice-formula,$(CBMCFLAGS ) ) ,--slice-formula)
552+ $(error CBMC option --slice-formula is set by default in Makefile.common, so should not be specified in a function-specific Makefile)
553+ endif
554+
541555# ###############################################################
542556# CBMC flags common to all proofs
543557CBMCFLAGS += $(CBMC_FLAG_FLUSH )
544558CBMCFLAGS += --object-bits $(CBMC_OBJECT_BITS )
545559CBMCFLAGS += --slice-formula
546560
547-
548561# ###############################################################
549562# Set C compiler defines
550563DEFINES += -DCBMC=1
Original file line number Diff line number Diff line change @@ -29,16 +29,6 @@ USE_DYNAMIC_FRAMES=1
2929EXTERNAL_SAT_SOLVER =
3030CBMCFLAGS =--bitwuzla
3131
32- # For this proof we tell CBMC to
33- # - not decompose arrays into their individual cells
34- # - to slice constraints that are not in the cone of influence of the proof obligations
35- # These options simplify them modelling of arrays and produce much more compact
36- # SMT files, leaving all array-type reasoning to the SMT solver.
37- #
38- # For functions that use large and multi-dimensional arrays, this yields
39- # a substantial improvement in proof performance.
40- CBMCFLAGS += --no-array-field-sensitivity
41-
4232FUNCTION_NAME = mlk_keccak_squeeze_once
4333
4434# If this proof is found to consume huge amounts of RAM, you can set the
Original file line number Diff line number Diff line change @@ -29,16 +29,6 @@ USE_DYNAMIC_FRAMES=1
2929EXTERNAL_SAT_SOLVER =
3030CBMCFLAGS =--bitwuzla
3131
32- # For this proof we tell CBMC to
33- # - not decompose arrays into their individual cells
34- # - to slice constraints that are not in the cone of influence of the proof obligations
35- # These options simplify them modelling of arrays and produce much more compact
36- # SMT files, leaving all array-type reasoning to the SMT solver.
37- #
38- # For functions that use large and multi-dimensional arrays, this yields
39- # a substantial improvement in proof performance.
40- CBMCFLAGS += --no-array-field-sensitivity
41-
4232FUNCTION_NAME = mlk_keccak_squeezeblocks
4333
4434# If this proof is found to consume huge amounts of RAM, you can set the
Original file line number Diff line number Diff line change @@ -29,16 +29,6 @@ USE_DYNAMIC_FRAMES=1
2929EXTERNAL_SAT_SOLVER =
3030CBMCFLAGS =--bitwuzla
3131
32- # For this proof we tell CBMC to
33- # - not decompose arrays into their individual cells
34- # - to slice constraints that are not in the cone of influence of the proof obligations
35- # These options simplify them modelling of arrays and produce much more compact
36- # SMT files, leaving all array-type reasoning to the SMT solver.
37- #
38- # For functions that use large and multi-dimensional arrays, this yields
39- # a substantial improvement in proof performance.
40- CBMCFLAGS += --no-array-field-sensitivity
41-
4232FUNCTION_NAME = mlk_keccak_squeezeblocks_x4
4333
4434# If this proof is found to consume huge amounts of RAM, you can set the
Original file line number Diff line number Diff line change @@ -28,16 +28,6 @@ USE_DYNAMIC_FRAMES=1
2828EXTERNAL_SAT_SOLVER =
2929CBMCFLAGS =--smt2
3030
31- # For this proof we tell CBMC to
32- # - not decompose arrays into their individual cells
33- # - to slice constraints that are not in the cone of influence of the proof obligations
34- # These options simplify them modelling of arrays and produce much more compact
35- # SMT files, leaving all array-type reasoning to the SMT solver.
36- #
37- # For functions that use large and multi-dimensional arrays, this yields
38- # a substantial improvement in proof performance.
39- CBMCFLAGS += --no-array-field-sensitivity
40-
4131FUNCTION_NAME = mlk_keccakf1600_permute
4232
4333# If this proof is found to consume huge amounts of RAM, you can set the
Original file line number Diff line number Diff line change @@ -28,16 +28,6 @@ USE_DYNAMIC_FRAMES=1
2828EXTERNAL_SAT_SOLVER =
2929CBMCFLAGS =--smt2
3030
31- # For this proof we tell CBMC to
32- # - not decompose arrays into their individual cells
33- # - to slice constraints that are not in the cone of influence of the proof obligations
34- # These options simplify them modelling of arrays and produce much more compact
35- # SMT files, leaving all array-type reasoning to the SMT solver.
36- #
37- # For functions that use large and multi-dimensional arrays, this yields
38- # a substantial improvement in proof performance.
39- CBMCFLAGS += --no-array-field-sensitivity
40-
4131FUNCTION_NAME = mlk_keccakf1600_permute_c
4232
4333# If this proof is found to consume huge amounts of RAM, you can set the
Original file line number Diff line number Diff line change @@ -28,16 +28,6 @@ USE_DYNAMIC_FRAMES=1
2828EXTERNAL_SAT_SOLVER =
2929CBMCFLAGS =--smt2
3030
31- # For this proof we tell CBMC to
32- # - not decompose arrays into their individual cells
33- # - to slice constraints that are not in the cone of influence of the proof obligations
34- # These options simplify them modelling of arrays and produce much more compact
35- # SMT files, leaving all array-type reasoning to the SMT solver.
36- #
37- # For functions that use large and multi-dimensional arrays, this yields
38- # a substantial improvement in proof performance.
39- CBMCFLAGS += --no-array-field-sensitivity
40-
4131FUNCTION_NAME = mlk_keccakf1600x4_permute
4232
4333# If this proof is found to consume huge amounts of RAM, you can set the
Original file line number Diff line number Diff line change @@ -27,16 +27,6 @@ USE_DYNAMIC_FRAMES=1
2727EXTERNAL_SAT_SOLVER =
2828CBMCFLAGS =--smt2
2929
30- # For this proof we tell CBMC to
31- # - not decompose arrays into their individual cells
32- # - to slice constraints that are not in the cone of influence of the proof obligations
33- # These options simplify them modelling of arrays and produce much more compact
34- # SMT files, leaving all array-type reasoning to the SMT solver.
35- #
36- # For functions that use large and multi-dimensional arrays, this yields
37- # a substantial improvement in proof performance.
38- CBMCFLAGS += --no-array-field-sensitivity
39-
4030FUNCTION_NAME = mlk_matvec_mul
4131
4232# If this proof is found to consume huge amounts of RAM, you can set the
Original file line number Diff line number Diff line change @@ -27,16 +27,6 @@ USE_DYNAMIC_FRAMES=1
2727EXTERNAL_SAT_SOLVER =
2828CBMCFLAGS =--smt2
2929
30- # For this proof we tell CBMC to
31- # - not decompose arrays into their individual cells
32- # - to slice constraints that are not in the cone of influence of the proof obligations
33- # These options simplify them modelling of arrays and produce much more compact
34- # SMT files, leaving all array-type reasoning to the SMT solver.
35- #
36- # For functions that use large and multi-dimensional arrays, this yields
37- # a substantial improvement in proof performance.
38- CBMCFLAGS += --no-array-field-sensitivity
39-
4030FUNCTION_NAME = mlk_polymat_permute_bitrev_to_custom
4131
4232# If this proof is found to consume huge amounts of RAM, you can set the
Original file line number Diff line number Diff line change @@ -27,16 +27,6 @@ USE_DYNAMIC_FRAMES=1
2727EXTERNAL_SAT_SOLVER =
2828CBMCFLAGS =--smt2
2929
30- # For this proof we tell CBMC to
31- # - not decompose arrays into their individual cells
32- # - to slice constraints that are not in the cone of influence of the proof obligations
33- # These options simplify them modelling of arrays and produce much more compact
34- # SMT files, leaving all array-type reasoning to the SMT solver.
35- #
36- # For functions that use large and multi-dimensional arrays, this yields
37- # a substantial improvement in proof performance.
38- CBMCFLAGS += --no-array-field-sensitivity
39-
4030FUNCTION_NAME = mlk_polyvec_add
4131
4232# If this proof is found to consume huge amounts of RAM, you can set the
You can’t perform that action at this time.
0 commit comments