]> begriffs open source - cmsis-freertos/blob - Test/CBMC/proofs/Queue/QueueGenericCreate/Configurations.json
Merge branch 'develop'
[cmsis-freertos] / Test / CBMC / proofs / Queue / QueueGenericCreate / Configurations.json
1 #
2 # FreeRTOS memory safety proofs with CBMC.
3 # Copyright (C) 2019 Amazon.com, Inc. or its affiliates.  All Rights Reserved.
4 #
5 # Permission is hereby granted, free of charge, to any person
6 # obtaining a copy of this software and associated documentation
7 # files (the "Software"), to deal in the Software without
8 # restriction, including without limitation the rights to use, copy,
9 # modify, merge, publish, distribute, sublicense, and/or sell copies
10 # of the Software, and to permit persons to whom the Software is
11 # furnished to do so, subject to the following conditions:
12 #
13 # The above copyright notice and this permission notice shall be
14 # included in all copies or substantial portions of the Software.
15 #
16 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17 # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18 # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19 # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
20 # BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
21 # ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
22 # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23 # SOFTWARE.
24 #
25 # http://aws.amazon.com/freertos
26 # http://www.FreeRTOS.org
27 #
28
29 {
30   "ENTRY": "QueueGenericCreate",
31
32   # A CBMC pointer is an object id followed by an offset into the object.
33   # The size of the offset is limited by the size of the object id.
34   "CBMC_OBJECT_BITS": "7",
35   "CBMC_OBJECT_MAX_SIZE": "\"((UINT32_MAX>>(CBMC_OBJECT_BITS+1))\"",
36
37   "CBMCFLAGS":
38   [
39       "--unwind 1",
40       "--signed-overflow-check",
41       "--unsigned-overflow-check"
42
43   ],
44   "OBJS":
45   [
46     "$(ENTRY)_harness.goto",
47     "$(FREERTOS)/Source/list.goto",
48     "$(FREERTOS)/Source/queue.goto"
49   ],
50   "DEF":
51   [
52     {
53       "QueueGenericCreate_default": [
54         "CBMC_OBJECT_BITS={CBMC_OBJECT_BITS}",
55         "CBMC_OBJECT_MAX_SIZE={CBMC_OBJECT_MAX_SIZE}",
56         "configUSE_TRACE_FACILITY=0",
57         "configGENERATE_RUN_TIME_STATS=0",
58         "configUSE_MUTEXES=1",
59         "'mtCOVERAGE_TEST_MARKER()=__CPROVER_assert(1, \"Coverage marker\")'",
60         "configSUPPORT_STATIC_ALLOCATION=1",
61         "configUSE_QUEUE_SETS=0",
62         "configSUPPORT_DYNAMIC_ALLOCATION=1"
63       ]
64     },
65     {
66       "QueueGenericCreate_noMutex": [
67         "CBMC_OBJECT_BITS={CBMC_OBJECT_BITS}",
68         "CBMC_OBJECT_MAX_SIZE={CBMC_OBJECT_MAX_SIZE}",
69         "configUSE_TRACE_FACILITY=0",
70         "configGENERATE_RUN_TIME_STATS=0",
71         "configUSE_MUTEXES=0",
72         "configUSE_RECURSIVE_MUTEXES=0",
73         "'mtCOVERAGE_TEST_MARKER()=__CPROVER_assert(1, \"Coverage marker\")'",
74         "configSUPPORT_STATIC_ALLOCATION=1",
75         "configUSE_QUEUE_SETS=0",
76         "configSUPPORT_DYNAMIC_ALLOCATION=1"
77       ]
78     },
79     {
80       "QueueGenericCreate_noSTATIC_ALLOCATION": [
81         "CBMC_OBJECT_BITS={CBMC_OBJECT_BITS}",
82         "CBMC_OBJECT_MAX_SIZE={CBMC_OBJECT_MAX_SIZE}",
83         "configUSE_TRACE_FACILITY=0",
84         "configGENERATE_RUN_TIME_STATS=0",
85         "configUSE_MUTEXES=1",
86         "'mtCOVERAGE_TEST_MARKER()=__CPROVER_assert(1, \"Coverage marker\")'",
87         "configSUPPORT_STATIC_ALLOCATION=0",
88         "configUSE_QUEUE_SETS=0",
89         "configSUPPORT_DYNAMIC_ALLOCATION=1"
90       ]
91     },
92     {
93       "QueueGenericCreate_useQueueSets": [
94         "CBMC_OBJECT_BITS={CBMC_OBJECT_BITS}",
95         "CBMC_OBJECT_MAX_SIZE={CBMC_OBJECT_MAX_SIZE}",
96         "configUSE_TRACE_FACILITY=0",
97         "configGENERATE_RUN_TIME_STATS=0",
98         "configUSE_MUTEXES=1",
99         "'mtCOVERAGE_TEST_MARKER()=__CPROVER_assert(1, \"Coverage marker\")'",
100         "configSUPPORT_STATIC_ALLOCATION=1",
101         "configUSE_QUEUE_SETS=1",
102         "configSUPPORT_DYNAMIC_ALLOCATION=1"
103       ]
104     }
105   ],
106   "GENERATE_HEADER": [
107     "queue_datastructure.h"
108   ]
109 }