You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If we run it with the cbmc command cbmc --verbosity 9 --function harness cbmc4_harness.c
We get the output
CBMC version 6.3.1 (cbmc-6.3.1) 64-bit x86_64 linux
Parsing cbmc4_harness.c
Converting
Type-checking cbmc4_harness
file cbmc4_harness.c line 44 function harness: function 'malloc' is not declared
file cbmc4_harness.c line 61 function harness: function 'free' is not declared
Generating GOTO Program
Adding CPROVER library (x86_64)
file <builtin-library-malloc> line 11: implicit function declaration 'malloc'
old definition in module cbmc4_harness file cbmc4_harness.c line 44 function harness
void * (void)
new definition in module <built-in-library> file <builtin-library-malloc> line 11
void * (__CPROVER_size_t malloc_size)
file <builtin-library-free> line 14: implicit function declaration 'free'
old definition in module cbmc4_harness file cbmc4_harness.c line 61 function harness
signed int (void)
new definition in module <built-in-library> file <builtin-library-free> line 14
void (void *ptr)
Removal of function pointers and virtual functions
Generic Property Instrumentation
Running with 8 object bits, 56 offset bits (default)
Starting Bounded Model Checking
Runtime Symex: 0.0141128s
size of program expression: 368 steps
simple slicing removed 29 assignments
Generated 82 VCC(s), 75 remaining after simplification
Runtime Postprocess Equation: 3.6186e-05s
Passing problem to propositional reduction
converting SSA
Runtime Convert SSA: 0.00283073s
Running propositional reduction
Post-processing
As seen, the verification gets stuck in Post-processing and does not proceed to the SAT solving stage.
If we remove the line with memmove, the verification completes in one second.
We have observed this with multiple functions containing memmove across different embedded software.
Please, is this a problem with CBMC or is there something we are not doing?
The text was updated successfully, but these errors were encountered:
When verifying functions containing memmove and non-deterministic sizes, the cbmc tool does not proceed beyond the post-processing stage.
For example, given the program below
If we run it with the cbmc command
cbmc --verbosity 9 --function harness cbmc4_harness.c
We get the output
As seen, the verification gets stuck in Post-processing and does not proceed to the SAT solving stage.
If we remove the line with memmove, the verification completes in one second.
We have observed this with multiple functions containing memmove across different embedded software.
Please, is this a problem with CBMC or is there something we are not doing?
The text was updated successfully, but these errors were encountered: