[ 0:01] compiling /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2097:10: warning: format string is not a string literal (potentially insecure) [ 0:01] printf(__cil_tmp6); [ 0:01] ^~~~~~~~~~ [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2097:10: note: treat the string as an argument to avoid this [ 0:01] printf(__cil_tmp6); [ 0:01] ^ [ 0:01] "%s", [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2102:12: warning: format string is not a string literal (potentially insecure) [ 0:01] printf(__cil_tmp7); [ 0:01] ^~~~~~~~~~ [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2102:12: note: treat the string as an argument to avoid this [ 0:01] printf(__cil_tmp7); [ 0:01] ^ [ 0:01] "%s", [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2107:12: warning: format string is not a string literal (potentially insecure) [ 0:01] printf(__cil_tmp8); [ 0:01] ^~~~~~~~~~ [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2107:12: note: treat the string as an argument to avoid this [ 0:01] printf(__cil_tmp8); [ 0:01] ^ [ 0:01] "%s", [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2112:10: warning: format string is not a string literal (potentially insecure) [ 0:01] printf(__cil_tmp9); [ 0:01] ^~~~~~~~~~ [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2112:10: note: treat the string as an argument to avoid this [ 0:01] printf(__cil_tmp9); [ 0:01] ^ [ 0:01] "%s", [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2116:10: warning: format string is not a string literal (potentially insecure) [ 0:01] printf(__cil_tmp11); [ 0:01] ^~~~~~~~~~~ [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2116:10: note: treat the string as an argument to avoid this [ 0:01] printf(__cil_tmp11); [ 0:01] ^ [ 0:01] "%s", [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2121:12: warning: format string is not a string literal (potentially insecure) [ 0:01] printf(__cil_tmp12); [ 0:01] ^~~~~~~~~~~ [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2121:12: note: treat the string as an argument to avoid this [ 0:01] printf(__cil_tmp12); [ 0:01] ^ [ 0:01] "%s", [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2126:12: warning: format string is not a string literal (potentially insecure) [ 0:01] printf(__cil_tmp13); [ 0:01] ^~~~~~~~~~~ [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2126:12: note: treat the string as an argument to avoid this [ 0:01] printf(__cil_tmp13); [ 0:01] ^ [ 0:01] "%s", [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2131:10: warning: format string is not a string literal (potentially insecure) [ 0:01] printf(__cil_tmp14); [ 0:01] ^~~~~~~~~~~ [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2131:10: note: treat the string as an argument to avoid this [ 0:01] printf(__cil_tmp14); [ 0:01] ^ [ 0:01] "%s", [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2175:10: warning: format string is not a string literal (potentially insecure) [ 0:01] printf(__cil_tmp20); [ 0:01] ^~~~~~~~~~~ [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2175:10: note: treat the string as an argument to avoid this [ 0:01] printf(__cil_tmp20); [ 0:01] ^ [ 0:01] "%s", [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2232:10: warning: format string is not a string literal (potentially insecure) [ 0:01] printf(__cil_tmp26); [ 0:01] ^~~~~~~~~~~ [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2232:10: note: treat the string as an argument to avoid this [ 0:01] printf(__cil_tmp26); [ 0:01] ^ [ 0:01] "%s", [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2973:44: warning: incompatible redeclaration of library function 'malloc' [ 0:01] extern __attribute__((__nothrow__)) void *malloc(size_t __size ) __attribute__((__malloc__)) ; [ 0:01] ^ [ 0:01] /home/xrockai/src/divine/nightly/test/svcomp/product-lines/elevator_spec3_product09_true.cil.c:2973:44: note: 'malloc' is a builtin with type 'void *(unsigned long)' [ 0:01] 11 warnings generated. [ 0:01] compiling /dios/lib/config/seqklee.bc [ 0:01] setting up pass: functionmeta, options = [ 0:02] setting up pass: fuse-ctors, options = [ 0:02] KLEE: output directory is "/var/obj/divine-nightly/semidbg/test/__test_work_dir.19/_klee_out" [ 0:04] KLEE: Using Z3 solver backend [ 0:04] WARNING: this target does not support the llvm.stacksave intrinsic. [ 0:04] warning: Linking two modules of different target triples: klee_div_zero_check.bc' is 'x86_64-unknown-linux-gnu' whereas 'klee.bc' is 'x86_64-unknown-none-elf' [ 0:04] [ 0:04] KLEE: WARNING: undefined reference to function: __dios_tainted_init [ 0:07] KLEE: WARNING: undefined reference to function: klee_free [ 0:07] KLEE: WARNING: undefined reference to function: klee_malloc [ 0:07] i:1 [ 0:07] KLEE: WARNING ONCE: Alignment of memory from call "klee_malloc" is not modelled. Using alignment of 8. [ 0:07] about to __boot:0 [ 0:07] about to run the scheduler:0 [ 0:07] KLEE: WARNING ONCE: calling external: __dios_tainted_init() at /dios/libc/sys/start.cpp:49 5 [ 0:07] KLEE: ERROR: /dios/libc/sys/start.cpp:87: failed external call: __dios_tainted_init [ 0:07] KLEE: NOTE: now ignoring this error at this location [ 0:07] KLEE: ERROR: EXITING ON ERROR: [ 0:07] Error: failed external call: __dios_tainted_init [ 0:07] File: /dios/libc/sys/start.cpp [ 0:07] Line: 87 [ 0:07] assembly.ll line: 41436 [ 0:07] Stack: [ 0:07] #000041436 in __dios_start (l=0, argc=1, argv=93979724452360, envp=93979724537864) at /dios/libc/sys/start.cpp:87 [ 0:07] #100017398 in _ZN6__dios10sched_nullINS_5ClockINS_10NondetKleeINS_4BaseEEEEEE13run_schedulerINS_7ContextEEEvv () at /dios/sys/sched_null.hpp:163 [ 0:07] #200049761 in klee_boot (argc=2, argv=93979697396480) at /dios/arch/klee/boot.c:41 [ 0:07] [ 0:07] [ 0:07] 1 /* TAGS: c sym */ [ 0:07] 2 /* VERIFY_OPTS: --symbolic -o nofail:malloc */ [ 0:07] 3 extern void __VERIFIER_error() __attribute__ ((__noreturn__)); [ 0:07] 4 [ 0:07] 5 extern int __VERIFIER_nondet_int(void); [ 0:07] 6 /* Generated by CIL v. 1.3.7 */ [ 0:07] 7 /* print_CIL_Input is true */ [ 0:07] 8 [ 0:07] 9 struct JoinPoint { [ 0:07] 10 void **(*fp)(struct JoinPoint * ) ; [ 0:07] 11 void **args ; [ 0:07] 12 int argsCount ; [ 0:07] 13 char const **argsType ; [ 0:07] 14 void *(*arg)(int , struct JoinPoint * ) ; [ 0:07] 15 char const *(*argType)(int , struct JoinPoint * ) ; [ 0:07] 16 void **retValue ; [ 0:07] 17 char const *retType ; [ 0:07] 18 char const *funcName ; [ 0:07] 19 char const *targetName ; [ 0:07] 20 char const *fileName ; [ 0:07] 21 char const *kind ; [ 0:07] 22 void *excep_return ; [ 0:07] 23 }; [ 0:07] 24 struct __UTAC__CFLOW_FUNC { [ 0:07] 25 int (*func)(int , int ) ; [ 0:07] 26 int val ; [ 0:07] 27 struct __UTAC__CFLOW_FUNC *next ; [ 0:07] 28 }; [ 0:07] 29 struct __UTAC__EXCEPTION { [ 0:07] 30 void *jumpbuf ; [ 0:07] 31 unsigned long long prtValue ; [ 0:07] 32 int pops ; [ 0:07] 33 struct __UTAC__CFLOW_FUNC *cflowfuncs ; [ 0:07] 34 }; [ 0:07] 35 typedef unsigned int size_t; [ 0:07] 36 struct __ACC__ERR { [ 0:07] 37 void *v ; [ 0:07] 38 struct __ACC__ERR *next ; [ 0:07] 39 }; [ 0:07] 40 #pragma merger(0,"UnitTests.i","") [ 0:07] 41 int getOrigin(int person ) ; [ 0:07] 42 void initPersonOnFloor(int person , int floor ) ; [ 0:07] 43 void timeShift(void) ; [ 0:07] 44 int isBlocked(void) ; [ 0:07] 45 void printState(void) ; [ 0:07] 46 void initTopDown(void) ; [ 0:07] 47 void initBottomUp(void) ; [ 0:07] 48 int cleanupTimeShifts = 12; [ 0:07] 49 void spec1(void) [ 0:07] 50 { int tmp ; [ 0:07] 51 int tmp___0 ; [ 0:07] 52 int i ; [ 0:07] 53 int tmp___1 ; [ 0:07] 54 [ 0:07] 55 { [ 0:07] 56 { [ 0:07] 57 initBottomUp(); [ 0:07] 58 tmp = getOrigin(5); [ 0:07] 59 initPersonOnFloor(5, tmp); [ 0:07] 60 printState(); [ 0:07] 61 tmp___0 = getOrigin(2); [ 0:07] 62 initPersonOnFloor(2, tmp___0); [ 0:07] 63 printState(); [ 0:07] 64 i = 0; [ 0:07] 65 } [ 0:07] 66 { [ 0:07] 67 while (1) { [ 0:07] 68 while_0_continue: /* CIL Label */ ; [ 0:07] 69 if (i < cleanupTimeShifts) { [ 0:07] 70 { [ 0:07] 71 tmp___1 = isBlocked(); [ 0:07] 72 } [ 0:07] 73 if (tmp___1 != 1) { [ 0:07] 74 [ 0:07] 75 } else { [ 0:07] 76 goto while_0_break; [ 0:07] 77 } [ 0:07] 78 } else { [ 0:07] 79 goto while_0_break; [ 0:07] 80 } [ 0:07] 81 { [ 0:07] 82 timeShift(); [ 0:07] 83 printState(); [ 0:07] 84 i = i + 1; [ 0:07] 85 } [ 0:07] 86 } [ 0:07] 87 while_0_break: /* CIL Label */ ; [ 0:07] 88 } [ 0:07] 89 return; [ 0:07] 90 } [ 0:07] 91 } [ 0:07] 92 void spec14(void) [ 0:07] 93 { int tmp ; [ 0:07] 94 int tmp___0 ; [ 0:07] 95 int i ; [ 0:07] 96 int tmp___1 ; [ 0:07] 97 [ 0:07] 98 { [ 0:07] 99 { [ 0:07] 100 initTopDown(); [ 0:07] 101 tmp = getOrigin(5); [ 0:07] 102 initPersonOnFloor(5, tmp); [ 0:07] 103 printState(); [ 0:07] 104 timeShift(); [ 0:07] 105 timeShift(); [ 0:07] 106 timeShift(); [ 0:07] 107 timeShift(); [ 0:07] 108 tmp___0 = getOrigin(0); [ 0:07] 109 initPersonOnFloor(0, tmp___0); [ 0:07] 110 printState(); [ 0:07] 111 i = 0; [ 0:07] 112 } [ 0:07] 113 { [ 0:07] 114 while (1) { [ 0:07] 115 while_1_continue: /* CIL Label */ ; [ 0:07] 116 if (i < cleanupTimeShifts) { [ 0:07] 117 { [ 0:07] 118 tmp___1 = isBlocked(); [ 0:07] 119 } [ 0:07] 120 if (tmp___1 != 1) { [ 0:07] 121 [ 0:07] 122 } else { [ 0:07] 123 goto while_1_break; [ 0:07] 124 } [ 0:07] 125 } else { [ 0:07] 126 goto while_1_break; [ 0:07] 127 } [ 0:07] 128 { [ 0:07] 129 timeShift(); [ 0:07] 130 printState(); [ 0:07] 131 i = i + 1; [ 0:07] 132 } [ 0:07] 133 } [ 0:07] 134 while_1_break: /* CIL Label */ ; [ 0:07] 135 } [ 0:07] 136 return; [ 0:07] 137 } [ 0:07] 138 } [ 0:07] 139 #pragma merger(0,"scenario.i","") [ 0:07] 140 void bobCall(void) ; [ 0:07] 141 void threeTS(void) ; [ 0:07] 142 void cleanup(void) ; [ 0:07] 143 void test(void) [ 0:07] 144 { [ 0:07] 145 [ 0:07] 146 { [ 0:07] 147 { [ 0:07] 148 initTopDown(); [ 0:07] 149 bobCall(); [ 0:07] 150 threeTS(); [ 0:07] 151 bobCall(); [ 0:07] 152 cleanup(); [ 0:07] 153 } [ 0:07] 154 return; [ 0:07] 155 } [ 0:07] 156 } [ 0:07] 157 #pragma merger(0,"Floor.i","") [ 0:07] 158 int isFloorCalling(int floorID ) ; [ 0:07] 159 void resetCallOnFloor(int floorID ) ; [ 0:07] 160 void callOnFloor(int floorID ) ; [ 0:07] 161 int isPersonOnFloor(int person , int floor ) ; [ 0:07] 162 void removePersonFromFloor(int person , int floor ) ; [ 0:07] 163 int isTopFloor(int floorID ) ; [ 0:07] 164 void initFloors(void) ; [ 0:07] 165 int calls_0 ; [ 0:07] 166 int calls_1 ; [ 0:07] 167 int calls_2 ; [ 0:07] 168 int calls_3 ; [ 0:07] 169 int calls_4 ; [ 0:07] 170 int personOnFloor_0_0 ; [ 0:07] 171 int personOnFloor_0_1 ; [ 0:07] 172 int personOnFloor_0_2 ; [ 0:07] 173 int personOnFloor_0_3 ; [ 0:07] 174 int personOnFloor_0_4 ; [ 0:07] 175 int personOnFloor_1_0 ; [ 0:07] 176 int personOnFloor_1_1 ; [ 0:07] 177 int personOnFloor_1_2 ; [ 0:07] 178 int personOnFloor_1_3 ; [ 0:07] 179 int personOnFloor_1_4 ; [ 0:07] 180 int personOnFloor_2_0 ; [ 0:07] 181 int personOnFloor_2_1 ; [ 0:07] 182 int personOnFloor_2_2 ; [ 0:07] 183 int personOnFloor_2_3 ; [ 0:07] 184 int personOnFloor_2_4 ; [ 0:07] 185 int personOnFloor_3_0 ; [ 0:07] 186 int personOnFloor_3_1 ; [ 0:07] 187 int personOnFloor_3_2 ; [ 0:07] 188 int personOnFloor_3_3 ; [ 0:07] 189 int personOnFloor_3_4 ; [ 0:07] 190 int personOnFloor_4_0 ; [ 0:07] 191 int personOnFloor_4_1 ; [ 0:07] 192 int personOnFloor_4_2 ; [ 0:07] 193 int personOnFloor_4_3 ; [ 0:07] 194 int personOnFloor_4_4 ; [ 0:07] 195 int personOnFloor_5_0 ; [ 0:07] 196 int personOnFloor_5_1 ; [ 0:07] 197 int personOnFloor_5_2 ; [ 0:07] 198 int personOnFloor_5_3 ; [ 0:07] 199 int personOnFloor_5_4 ; [ 0:07] 200 void initFloors(void) [ 0:07] 201 { [ 0:07] 202 [ 0:07] 203 { [ 0:07] 204 calls_0 = 0; [ 0:07] 205 calls_1 = 0; [ 0:07] 206 calls_2 = 0; [ 0:07] 207 calls_3 = 0; [ 0:07] 208 calls_4 = 0; [ 0:07] 209 personOnFloor_0_0 = 0; [ 0:07] 210 personOnFloor_0_1 = 0; [ 0:07] 211 personOnFloor_0_2 = 0; [ 0:07] 212 personOnFloor_0_3 = 0; [ 0:07] 213 personOnFloor_0_4 = 0; [ 0:07] 214 personOnFloor_1_0 = 0; [ 0:07] 215 personOnFloor_1_1 = 0; [ 0:07] 216 personOnFloor_1_2 = 0; [ 0:07] 217 personOnFloor_1_3 = 0; [ 0:07] 218 personOnFloor_1_4 = 0; [ 0:07] 219 personOnFloor_2_0 = 0; [ 0:07] 220 personOnFloor_2_1 = 0; [ 0:07] 221 personOnFloor_2_2 = 0; [ 0:07] 222 personOnFloor_2_3 = 0; [ 0:07] 223 personOnFloor_2_4 = 0; [ 0:07] 224 personOnFloor_3_0 = 0; [ 0:07] 225 personOnFloor_3_1 = 0; [ 0:07] 226 personOnFloor_3_2 = 0; [ 0:07] 227 personOnFloor_3_3 = 0; [ 0:07] 228 personOnFloor_3_4 = 0; [ 0:07] 229 personOnFloor_4_0 = 0; [ 0:07] 230 personOnFloor_4_1 = 0; [ 0:07] 231 personOnFloor_4_2 = 0; [ 0:07] 232 personOnFloor_4_3 = 0; [ 0:07] 233 personOnFloor_4_4 = 0; [ 0:07] 234 personOnFloor_5_0 = 0; [ 0:07] 235 personOnFloor_5_1 = 0; [ 0:07] 236 personOnFloor_5_2 = 0; [ 0:07] 237 personOnFloor_5_3 = 0; [ 0:07] 238 personOnFloor_5_4 = 0; [ 0:07] 239 return; [ 0:07] 240 } [ 0:07] 241 } [ 0:07] 242 int isFloorCalling(int floorID ) [ 0:07] 243 { int retValue_acc ; [ 0:07] 244 [ 0:07] 245 { [ 0:07] 246 if (floorID == 0) { [ 0:07] 247 retValue_acc = calls_0; [ 0:07] 248 return (retValue_acc); [ 0:07] 249 } else { [ 0:07] 250 if (floorID == 1) { [ 0:07] 251 retValue_acc = calls_1; [ 0:07] 252 return (retValue_acc); [ 0:07] 253 } else { [ 0:07] 254 if (floorID == 2) { [ 0:07] 255 retValue_acc = calls_2; [ 0:07] 256 return (retValue_acc); [ 0:07] 257 } else { [ 0:07] 258 if (floorID == 3) { [ 0:07] 259 retValue_acc = calls_3; [ 0:07] 260 return (retValue_acc); [ 0:07] 261 } else { [ 0:07] 262 if (floorID == 4) { [ 0:07] 263 retValue_acc = calls_4; [ 0:07] 264 return (retValue_acc); [ 0:07] 265 } else { [ 0:07] 266 [ 0:07] 267 } [ 0:07] 268 } [ 0:07] 269 } [ 0:07] 270 } [ 0:07] 271 } [ 0:07] 272 retValue_acc = 0; [ 0:07] 273 return (retValue_acc); [ 0:07] 274 return (retValue_acc); [ 0:07] 275 } [ 0:07] 276 } [ 0:07] 277 void resetCallOnFloor(int floorID ) [ 0:07] 278 { [ 0:07] 279 [ 0:07] 280 { [ 0:07] 281 if (floorID == 0) { [ 0:07] 282 calls_0 = 0; [ 0:07] 283 } else { [ 0:07] 284 if (floorID == 1) { [ 0:07] 285 calls_1 = 0; [ 0:07] 286 } else { [ 0:07] 287 if (floorID == 2) { [ 0:07] 288 calls_2 = 0; [ 0:07] 289 } else { [ 0:07] 290 if (floorID == 3) { [ 0:07] 291 calls_3 = 0; [ 0:07] 292 } else { [ 0:07] 293 if (floorID == 4) { [ 0:07] 294 calls_4 = 0; [ 0:07] 295 } else { [ 0:07] 296 [ 0:07] 297 } [ 0:07] 298 } [ 0:07] 299 } [ 0:07] 300 } [ 0:07] 301 } [ 0:07] 302 return; [ 0:07] 303 } [ 0:07] 304 } [ 0:07] 305 void callOnFloor(int floorID ) [ 0:07] 306 { [ 0:07] 307 [ 0:07] 308 { [ 0:07] 309 if (floorID == 0) { [ 0:07] 310 calls_0 = 1; [ 0:07] 311 } else { [ 0:07] 312 if (floorID == 1) { [ 0:07] 313 calls_1 = 1; [ 0:07] 314 } else { [ 0:07] 315 if (floorID == 2) { [ 0:07] 316 calls_2 = 1; [ 0:07] 317 } else { [ 0:07] 318 if (floorID == 3) { [ 0:07] 319 calls_3 = 1; [ 0:07] 320 } else { [ 0:07] 321 if (floorID == 4) { [ 0:07] 322 calls_4 = 1; [ 0:07] 323 } else { [ 0:07] 324 [ 0:07] 325 } [ 0:07] 326 } [ 0:07] 327 } [ 0:07] 328 } [ 0:07] 329 } [ 0:07] 330 return; [ 0:07] 331 } [ 0:07] 332 } [ 0:07] 333 int isPersonOnFloor(int person , int floor ) [ 0:07] 334 { int retValue_acc ; [ 0:07] 335 [ 0:07] 336 { [ 0:07] 337 if (floor == 0) { [ 0:07] 338 if (person == 0) { [ 0:07] 339 retValue_acc = personOnFloor_0_0; [ 0:07] 340 return (retValue_acc); [ 0:07] 341 } else { [ 0:07] 342 if (person == 1) { [ 0:07] 343 retValue_acc = personOnFloor_1_0; [ 0:07] 344 return (retValue_acc); [ 0:07] 345 } else { [ 0:07] 346 if (person == 2) { [ 0:07] 347 retValue_acc = personOnFloor_2_0; [ 0:07] 348 return (retValue_acc); [ 0:07] 349 } else { [ 0:07] 350 if (person == 3) { [ 0:07] 351 retValue_acc = personOnFloor_3_0; [ 0:07] 352 return (retValue_acc); [ 0:07] 353 } else { [ 0:07] 354 if (person == 4) { [ 0:07] 355 retValue_acc = personOnFloor_4_0; [ 0:07] 356 return (retValue_acc); [ 0:07] 357 } else { [ 0:07] 358 if (person == 5) { [ 0:07] 359 retValue_acc = personOnFloor_5_0; [ 0:07] 360 return (retValue_acc); [ 0:07] 361 } else { [ 0:07] 362 [ 0:07] 363 } [ 0:07] 364 } [ 0:07] 365 } [ 0:07] 366 } [ 0:07] 367 } [ 0:07] 368 } [ 0:07] 369 } else { [ 0:07] 370 if (floor == 1) { [ 0:07] 371 if (person == 0) { [ 0:07] 372 retValue_acc = personOnFloor_0_1; [ 0:07] 373 return (retValue_acc); [ 0:07] 374 } else { [ 0:07] 375 if (person == 1) { [ 0:07] 376 retValue_acc = personOnFloor_1_1; [ 0:07] 377 return (retValue_acc); [ 0:07] 378 } else { [ 0:07] 379 if (person == 2) { [ 0:07] 380 retValue_acc = personOnFloor_2_1; [ 0:07] 381 return (retValue_acc); [ 0:07] 382 } else { [ 0:07] 383 if (person == 3) { [ 0:07] 384 retValue_acc = personOnFloor_3_1; [ 0:07] 385 return (retValue_acc); [ 0:07] 386 } else { [ 0:07] 387 if (person == 4) { [ 0:07] 388 retValue_acc = personOnFloor_4_1; [ 0:07] 389 return (retValue_acc); [ 0:07] 390 } else { [ 0:07] 391 if (person == 5) { [ 0:07] 392 retValue_acc = personOnFloor_5_1; [ 0:07] 393 return (retValue_acc); [ 0:07] 394 } else { [ 0:07] 395 [ 0:07] 396 } [ 0:07] 397 } [ 0:07] 398 } [ 0:07] 399 } [ 0:07] 400 } [ 0:07] 401 } [ 0:07] 402 } else { [ 0:07] 403 if (floor == 2) { [ 0:07] 404 if (person == 0) { [ 0:07] 405 retValue_acc = personOnFloor_0_2; [ 0:07] 406 return (retValue_acc); [ 0:07] 407 } else { [ 0:07] 408 if (person == 1) { [ 0:07] 409 retValue_acc = personOnFloor_1_2; [ 0:07] 410 return (retValue_acc); [ 0:07] 411 } else { [ 0:07] 412 if (person == 2) { [ 0:07] 413 retValue_acc = personOnFloor_2_2; [ 0:07] 414 return (retValue_acc); [ 0:07] 415 } else { [ 0:07] 416 if (person == 3) { [ 0:07] 417 retValue_acc = personOnFloor_3_2; [ 0:07] 418 return (retValue_acc); [ 0:07] 419 } else { [ 0:07] 420 if (person == 4) { [ 0:07] 421 retValue_acc = personOnFloor_4_2; [ 0:07] 422 return (retValue_acc); [ 0:07] 423 } else { [ 0:07] 424 if (person == 5) { [ 0:07] 425 retValue_acc = personOnFloor_5_2; [ 0:07] 426 return (retValue_acc); [ 0:07] 427 } else { [ 0:07] 428 [ 0:07] 429 } [ 0:07] 430 } [ 0:07] 431 } [ 0:07] 432 } [ 0:07] 433 } [ 0:07] 434 } [ 0:07] 435 } else { [ 0:07] 436 if (floor == 3) { [ 0:07] 437 if (person == 0) { [ 0:07] 438 retValue_acc = personOnFloor_0_3; [ 0:07] 439 return (retValue_acc); [ 0:07] 440 } else { [ 0:07] 441 if (person == 1) { [ 0:07] 442 retValue_acc = personOnFloor_1_3; [ 0:07] 443 return (retValue_acc); [ 0:07] 444 } else { [ 0:07] 445 if (person == 2) { [ 0:07] 446 retValue_acc = personOnFloor_2_3; [ 0:07] 447 return (retValue_acc); [ 0:07] 448 } else { [ 0:07] 449 if (person == 3) { [ 0:07] 450 retValue_acc = personOnFloor_3_3; [ 0:07] 451 return (retValue_acc); [ 0:07] 452 } else { [ 0:07] 453 if (person == 4) { [ 0:07] 454 retValue_acc = personOnFloor_4_3; [ 0:07] 455 return (retValue_acc); [ 0:07] 456 } else { [ 0:07] 457 if (person == 5) { [ 0:07] 458 retValue_acc = personOnFloor_5_3; [ 0:07] 459 return (retValue_acc); [ 0:07] 460 } else { [ 0:07] 461 [ 0:07] 462 } [ 0:07] 463 } [ 0:07] 464 } [ 0:07] 465 } [ 0:07] 466 } [ 0:07] 467 } [ 0:07] 468 } else { [ 0:07] 469 if (floor == 4) { [ 0:07] 470 if (person == 0) { [ 0:07] 471 retValue_acc = personOnFloor_0_4; [ 0:07] 472 return (retValue_acc); [ 0:07] 473 } else { [ 0:07] 474 if (person == 1) { [ 0:07] 475 retValue_acc = personOnFloor_1_4; [ 0:07] 476 return (retValue_acc); [ 0:07] 477 } else { [ 0:07] 478 if (person == 2) { [ 0:07] 479 retValue_acc = personOnFloor_2_4; [ 0:07] 480 return (retValue_acc); [ 0:07] 481 } else { [ 0:07] 482 if (person == 3) { [ 0:07] 483 retValue_acc = personOnFloor_3_4; [ 0:07] 484 return (retValue_acc); [ 0:07] 485 } else { [ 0:07] 486 if (person == 4) { [ 0:07] 487 retValue_acc = personOnFloor_4_4; [ 0:07] 488 return (retValue_acc); [ 0:07] 489 } else { [ 0:07] 490 if (person == 5) { [ 0:07] 491 retValue_acc = personOnFloor_5_4; [ 0:07] 492 return (retValue_acc); [ 0:07] 493 } else { [ 0:07] 494 [ 0:07] 495 } [ 0:07] 496 } [ 0:07] 497 } [ 0:07] 498 } [ 0:07] 499 } [ 0:07] 500 } [ 0:07] 501 } else { [ 0:07] 502 [ 0:07] 503 } [ 0:07] 504 } [ 0:07] 505 } [ 0:07] 506 } [ 0:07] 507 } [ 0:07] 508 retValue_acc = 0; [ 0:07] 509 return (retValue_acc); [ 0:07] 510 return (retValue_acc); [ 0:07] 511 } [ 0:07] 512 } [ 0:07] 513 void initPersonOnFloor(int person , int floor ) [ 0:07] 514 { [ 0:07] 515 [ 0:07] 516 { [ 0:07] 517 if (floor == 0) { [ 0:07] 518 if (person == 0) { [ 0:07] 519 personOnFloor_0_0 = 1; [ 0:07] 520 } else { [ 0:07] 521 if (person == 1) { [ 0:07] 522 personOnFloor_1_0 = 1; [ 0:07] 523 } else { [ 0:07] 524 if (person == 2) { [ 0:07] 525 personOnFloor_2_0 = 1; [ 0:07] 526 } else { [ 0:07] 527 if (person == 3) { [ 0:07] 528 personOnFloor_3_0 = 1; [ 0:07] 529 } else { [ 0:07] 530 if (person == 4) { [ 0:07] 531 personOnFloor_4_0 = 1; [ 0:07] 532 } else { [ 0:07] 533 if (person == 5) { [ 0:07] 534 personOnFloor_5_0 = 1; [ 0:07] 535 } else { [ 0:07] 536 [ 0:07] 537 } [ 0:07] 538 } [ 0:07] 539 } [ 0:07] 540 } [ 0:07] 541 } [ 0:07] 542 } [ 0:07] 543 } else { [ 0:07] 544 if (floor == 1) { [ 0:07] 545 if (person == 0) { [ 0:07] 546 personOnFloor_0_1 = 1; [ 0:07] 547 } else { [ 0:07] 548 if (person == 1) { [ 0:07] 549 personOnFloor_1_1 = 1; [ 0:07] 550 } else { [ 0:07] 551 if (person == 2) { [ 0:07] 552 personOnFloor_2_1 = 1; [ 0:07] 553 } else { [ 0:07] 554 if (person == 3) { [ 0:07] 555 personOnFloor_3_1 = 1; [ 0:07] 556 } else { [ 0:07] 557 if (person == 4) { [ 0:07] 558 personOnFloor_4_1 = 1; [ 0:07] 559 } else { [ 0:07] 560 if (person == 5) { [ 0:07] 561 personOnFloor_5_1 = 1; [ 0:07] 562 } else { [ 0:07] 563 [ 0:07] 564 } [ 0:07] 565 } [ 0:07] 566 } [ 0:07] 567 } [ 0:07] 568 } [ 0:07] 569 } [ 0:07] 570 } else { [ 0:07] 571 if (floor == 2) { [ 0:07] 572 if (person == 0) { [ 0:07] 573 personOnFloor_0_2 = 1; [ 0:07] 574 } else { [ 0:07] 575 if (person == 1) { [ 0:07] 576 personOnFloor_1_2 = 1; [ 0:07] 577 } else { [ 0:07] 578 if (person == 2) { [ 0:07] 579 personOnFloor_2_2 = 1; [ 0:07] 580 } else { [ 0:07] 581 if (person == 3) { [ 0:07] 582 personOnFloor_3_2 = 1; [ 0:07] 583 } else { [ 0:07] 584 if (person == 4) { [ 0:07] 585 personOnFloor_4_2 = 1; [ 0:07] 586 } else { [ 0:07] 587 if (person == 5) { [ 0:07] 588 personOnFloor_5_2 = 1; [ 0:07] 589 } else { [ 0:07] 590 [ 0:07] 591 } [ 0:07] 592 } [ 0:07] 593 } [ 0:07] 594 } [ 0:07] 595 } [ 0:07] 596 } [ 0:07] 597 } else { [ 0:07] 598 if (floor == 3) { [ 0:07] 599 if (person == 0) { [ 0:07] 600 personOnFloor_0_3 = 1; [ 0:07] 601 } else { [ 0:07] 602 if (person == 1) { [ 0:07] 603 personOnFloor_1_3 = 1; [ 0:07] 604 } else { [ 0:07] 605 if (person == 2) { [ 0:07] 606 personOnFloor_2_3 = 1; [ 0:07] 607 } else { [ 0:07] 608 if (person == 3) { [ 0:07] 609 personOnFloor_3_3 = 1; [ 0:07] 610 } else { [ 0:07] 611 if (person == 4) { [ 0:07] 612 personOnFloor_4_3 = 1; [ 0:07] 613 } else { [ 0:07] 614 if (person == 5) { [ 0:07] 615 personOnFloor_5_3 = 1; [ 0:07] 616 } else { [ 0:07] 617 [ 0:07] 618 } [ 0:07] 619 } [ 0:07] 620 } [ 0:07] 621 } [ 0:07] 622 } [ 0:07] 623 } [ 0:07] 624 } else { [ 0:07] 625 if (floor == 4) { [ 0:07] 626 if (person == 0) { [ 0:07] 627 personOnFloor_0_4 = 1; [ 0:07] 628 } else { [ 0:07] 629 if (person == 1) { [ 0:07] 630 personOnFloor_1_4 = 1; [ 0:07] 631 } else { [ 0:07] 632 if (person == 2) { [ 0:07] 633 personOnFloor_2_4 = 1; [ 0:07] 634 } else { [ 0:07] 635 if (person == 3) { [ 0:07] 636 personOnFloor_3_4 = 1; [ 0:07] 637 } else { [ 0:07] 638 if (person == 4) { [ 0:07] 639 personOnFloor_4_4 = 1; [ 0:07] 640 } else { [ 0:07] 641 if (person == 5) { [ 0:07] 642 personOnFloor_5_4 = 1; [ 0:07] 643 } else { [ 0:07] 644 [ 0:07] 645 } [ 0:07] 646 } [ 0:07] 647 } [ 0:07] 648 } [ 0:07] 649 } [ 0:07] 650 } [ 0:07] 651 } else { [ 0:07] 652 [ 0:07] 653 } [ 0:07] 654 } [ 0:07] 655 } [ 0:07] 656 } [ 0:07] 657 } [ 0:07] 658 { [ 0:07] 659 callOnFloor(floor); [ 0:07] 660 } [ 0:07] 661 return; [ 0:07] 662 } [ 0:07] 663 } [ 0:07] 664 void removePersonFromFloor(int person , int floor ) [ 0:07] 665 { [ 0:07] 666 [ 0:07] 667 { [ 0:07] 668 if (floor == 0) { [ 0:07] 669 if (person == 0) { [ 0:07] 670 personOnFloor_0_0 = 0; [ 0:07] 671 } else { [ 0:07] 672 if (person == 1) { [ 0:07] 673 personOnFloor_1_0 = 0; [ 0:07] 674 } else { [ 0:07] 675 if (person == 2) { [ 0:07] 676 personOnFloor_2_0 = 0; [ 0:07] 677 } else { [ 0:07] 678 if (person == 3) { [ 0:07] 679 personOnFloor_3_0 = 0; [ 0:07] 680 } else { [ 0:07] 681 if (person == 4) { [ 0:07] 682 personOnFloor_4_0 = 0; [ 0:07] 683 } else { [ 0:07] 684 if (person == 5) { [ 0:07] 685 personOnFloor_5_0 = 0; [ 0:07] 686 } else { [ 0:07] 687 [ 0:07] 688 } [ 0:07] 689 } [ 0:07] 690 } [ 0:07] 691 } [ 0:07] 692 } [ 0:07] 693 } [ 0:07] 694 } else { [ 0:07] 695 if (floor == 1) { [ 0:07] 696 if (person == 0) { [ 0:07] 697 personOnFloor_0_1 = 0; [ 0:07] 698 } else { [ 0:07] 699 if (person == 1) { [ 0:07] 700 personOnFloor_1_1 = 0; [ 0:07] 701 } else { [ 0:07] 702 if (person == 2) { [ 0:07] 703 personOnFloor_2_1 = 0; [ 0:07] 704 } else { [ 0:07] 705 if (person == 3) { [ 0:07] 706 personOnFloor_3_1 = 0; [ 0:07] 707 } else { [ 0:07] 708 if (person == 4) { [ 0:07] 709 personOnFloor_4_1 = 0; [ 0:07] 710 } else { [ 0:07] 711 if (person == 5) { [ 0:07] 712 personOnFloor_5_1 = 0; [ 0:07] 713 } else { [ 0:07] 714 [ 0:07] 715 } [ 0:07] 716 } [ 0:07] 717 } [ 0:07] 718 } [ 0:07] 719 } [ 0:07] 720 } [ 0:07] 721 } else { [ 0:07] 722 if (floor == 2) { [ 0:07] 723 if (person == 0) { [ 0:07] 724 personOnFloor_0_2 = 0; [ 0:07] 725 } else { [ 0:07] 726 if (person == 1) { [ 0:07] 727 personOnFloor_1_2 = 0; [ 0:07] 728 } else { [ 0:07] 729 if (person == 2) { [ 0:07] 730 personOnFloor_2_2 = 0; [ 0:07] 731 } else { [ 0:07] 732 if (person == 3) { [ 0:07] 733 personOnFloor_3_2 = 0; [ 0:07] 734 } else { [ 0:07] 735 if (person == 4) { [ 0:07] 736 personOnFloor_4_2 = 0; [ 0:07] 737 } else { [ 0:07] 738 if (person == 5) { [ 0:07] 739 personOnFloor_5_2 = 0; [ 0:07] 740 } else { [ 0:07] 741 [ 0:07] 742 } [ 0:07] 743 } [ 0:07] 744 } [ 0:07] 745 } [ 0:07] 746 } [ 0:07] 747 } [ 0:07] 748 } else { [ 0:07] 749 if (floor == 3) { [ 0:07] 750 if (person == 0) { [ 0:07] 751 personOnFloor_0_3 = 0; [ 0:07] 752 } else { [ 0:07] 753 if (person == 1) { [ 0:07] 754 personOnFloor_1_3 = 0; [ 0:07] 755 } else { [ 0:07] 756 if (person == 2) { [ 0:07] 757 personOnFloor_2_3 = 0; [ 0:07] 758 } else { [ 0:07] 759 if (person == 3) { [ 0:07] 760 personOnFloor_3_3 = 0; [ 0:07] 761 } else { [ 0:07] 762 if (person == 4) { [ 0:07] 763 personOnFloor_4_3 = 0; [ 0:07] 764 } else { [ 0:07] 765 if (person == 5) { [ 0:07] 766 personOnFloor_5_3 = 0; [ 0:07] 767 } else { [ 0:07] 768 [ 0:07] 769 } [ 0:07] 770 } [ 0:07] 771 } [ 0:07] 772 } [ 0:07] 773 } [ 0:07] 774 } [ 0:07] 775 } else { [ 0:07] 776 if (floor == 4) { [ 0:07] 777 if (person == 0) { [ 0:07] 778 personOnFloor_0_4 = 0; [ 0:07] 779 } else { [ 0:07] 780 if (person == 1) { [ 0:07] 781 personOnFloor_1_4 = 0; [ 0:07] 782 } else { [ 0:07] 783 if (person == 2) { [ 0:07] 784 personOnFloor_2_4 = 0; [ 0:07] 785 } else { [ 0:07] 786 if (person == 3) { [ 0:07] 787 personOnFloor_3_4 = 0; [ 0:07] 788 } else { [ 0:07] 789 if (person == 4) { [ 0:07] 790 personOnFloor_4_4 = 0; [ 0:07] 791 } else { [ 0:07] 792 if (person == 5) { [ 0:07] 793 personOnFloor_5_4 = 0; [ 0:07] 794 } else { [ 0:07] 795 [ 0:07] 796 } [ 0:07] 797 } [ 0:07] 798 } [ 0:07] 799 } [ 0:07] 800 } [ 0:07] 801 } [ 0:07] 802 } else { [ 0:07] 803 [ 0:07] 804 } [ 0:07] 805 } [ 0:07] 806 } [ 0:07] 807 } [ 0:07] 808 } [ 0:07] 809 { [ 0:07] 810 resetCallOnFloor(floor); [ 0:07] 811 } [ 0:07] 812 return; [ 0:07] 813 } [ 0:07] 814 } [ 0:07] 815 int isTopFloor(int floorID ) [ 0:07] 816 { int retValue_acc ; [ 0:07] 817 [ 0:07] 818 { [ 0:07] 819 retValue_acc = floorID == 4; [ 0:07] 820 return (retValue_acc); [ 0:07] 821 return (retValue_acc); [ 0:07] 822 } [ 0:07] 823 } [ 0:07] 824 #pragma merger(0,"Person.i","") [ 0:07] 825 int getWeight(int person ) ; [ 0:07] 826 int getDestination(int person ) ; [ 0:07] 827 int getWeight(int person ) [ 0:07] 828 { int retValue_acc ; [ 0:07] 829 [ 0:07] 830 { [ 0:07] 831 if (person == 0) { [ 0:07] 832 retValue_acc = 40; [ 0:07] 833 return (retValue_acc); [ 0:07] 834 } else { [ 0:07] 835 if (person == 1) { [ 0:07] 836 retValue_acc = 40; [ 0:07] 837 return (retValue_acc); [ 0:07] 838 } else { [ 0:07] 839 if (person == 2) { [ 0:07] 840 retValue_acc = 40; [ 0:07] 841 return (retValue_acc); [ 0:07] 842 } else { [ 0:07] 843 if (person == 3) { [ 0:07] 844 retValue_acc = 40; [ 0:07] 845 return (retValue_acc); [ 0:07] 846 } else { [ 0:07] 847 if (person == 4) { [ 0:07] 848 retValue_acc = 30; [ 0:07] 849 return (retValue_acc); [ 0:07] 850 } else { [ 0:07] 851 if (person == 5) { [ 0:07] 852 retValue_acc = 150; [ 0:07] 853 return (retValue_acc); [ 0:07] 854 } else { [ 0:07] 855 retValue_acc = 0; [ 0:07] 856 return (retValue_acc); [ 0:07] 857 } [ 0:07] 858 } [ 0:07] 859 } [ 0:07] 860 } [ 0:07] 861 } [ 0:07] 862 } [ 0:07] 863 return (retValue_acc); [ 0:07] 864 } [ 0:07] 865 } [ 0:07] 866 int getOrigin(int person ) [ 0:07] 867 { int retValue_acc ; [ 0:07] 868 [ 0:07] 869 { [ 0:07] 870 if (person == 0) { [ 0:07] 871 retValue_acc = 4; [ 0:07] 872 return (retValue_acc); [ 0:07] 873 } else { [ 0:07] 874 if (person == 1) { [ 0:07] 875 retValue_acc = 3; [ 0:07] 876 return (retValue_acc); [ 0:07] 877 } else { [ 0:07] 878 if (person == 2) { [ 0:07] 879 retValue_acc = 2; [ 0:07] 880 return (retValue_acc); [ 0:07] 881 } else { [ 0:07] 882 if (person == 3) { [ 0:07] 883 retValue_acc = 1; [ 0:07] 884 return (retValue_acc); [ 0:07] 885 } else { [ 0:07] 886 if (person == 4) { [ 0:07] 887 retValue_acc = 0; [ 0:07] 888 return (retValue_acc); [ 0:07] 889 } else { [ 0:07] 890 if (person == 5) { [ 0:07] 891 retValue_acc = 1; [ 0:07] 892 return (retValue_acc); [ 0:07] 893 } else { [ 0:07] 894 retValue_acc = 0; [ 0:07] 895 return (retValue_acc); [ 0:07] 896 } [ 0:07] 897 } [ 0:07] 898 } [ 0:07] 899 } [ 0:07] 900 } [ 0:07] 901 } [ 0:07] 902 return (retValue_acc); [ 0:07] 903 } [ 0:07] 904 } [ 0:07] 905 int getDestination(int person ) [ 0:07] 906 { int retValue_acc ; [ 0:07] 907 [ 0:07] 908 { [ 0:07] 909 if (person == 0) { [ 0:07] 910 retValue_acc = 0; [ 0:07] 911 return (retValue_acc); [ 0:07] 912 } else { [ 0:07] 913 if (person == 1) { [ 0:07] 914 retValue_acc = 0; [ 0:07] 915 return (retValue_acc); [ 0:07] 916 } else { [ 0:07] 917 if (person == 2) { [ 0:07] 918 retValue_acc = 1; [ 0:07] 919 return (retValue_acc); [ 0:07] 920 } else { [ 0:07] 921 if (person == 3) { [ 0:07] 922 retValue_acc = 3; [ 0:07] 923 return (retValue_acc); [ 0:07] 924 } else { [ 0:07] 925 if (person == 4) { [ 0:07] 926 retValue_acc = 1; [ 0:07] 927 return (retValue_acc); [ 0:07] 928 } else { [ 0:07] 929 if (person == 5) { [ 0:07] 930 retValue_acc = 3; [ 0:07] 931 return (retValue_acc); [ 0:07] 932 } else { [ 0:07] 933 retValue_acc = 0; [ 0:07] 934 return (retValue_acc); [ 0:07] 935 } [ 0:07] 936 } [ 0:07] 937 } [ 0:07] 938 } [ 0:07] 939 } [ 0:07] 940 } [ 0:07] 941 return (retValue_acc); [ 0:07] 942 } [ 0:07] 943 } [ 0:07] 944 #pragma merger(0,"wsllib_check.i","") [ 0:07] 945 void __automaton_fail(void) [ 0:07] 946 { [ 0:07] 947 [ 0:07] 948 { [ 0:07] 949 ERROR: __VERIFIER_error(); [ 0:07] 950 return; [ 0:07] 951 } [ 0:07] 952 } [ 0:07] 953 #pragma merger(0,"Elevator.i","") [ 0:07] 954 extern int printf(char const * __restrict __format , ...) ; [ 0:07] 955 void enterElevator(int p ) ; [ 0:07] 956 int isEmpty(void) ; [ 0:07] 957 int isAnyLiftButtonPressed(void) ; [ 0:07] 958 int buttonForFloorIsPressed(int floorID ) ; [ 0:07] 959 int areDoorsOpen(void) ; [ 0:07] 960 int getCurrentFloorID(void) ; [ 0:07] 961 int isIdle(void) ; [ 0:07] 962 int currentHeading = 1; [ 0:07] 963 int currentFloorID = 0; [ 0:07] 964 int persons_0 ; [ 0:07] 965 int persons_1 ; [ 0:07] 966 int persons_2 ; [ 0:07] 967 int persons_3 ; [ 0:07] 968 int persons_4 ; [ 0:07] 969 int persons_5 ; [ 0:07] 970 int doorState = 1; [ 0:07] 971 int floorButtons_0 ; [ 0:07] 972 int floorButtons_1 ; [ 0:07] 973 int floorButtons_2 ; [ 0:07] 974 int floorButtons_3 ; [ 0:07] 975 int floorButtons_4 ; [ 0:07] 976 void initTopDown(void) [ 0:07] 977 { [ 0:07] 978 [ 0:07] 979 { [ 0:07] 980 { [ 0:07] 981 currentFloorID = 4; [ 0:07] 982 currentHeading = 0; [ 0:07] 983 floorButtons_0 = 0; [ 0:07] 984 floorButtons_1 = 0; [ 0:07] 985 floorButtons_2 = 0; [ 0:07] 986 floorButtons_3 = 0; [ 0:07] 987 floorButtons_4 = 0; [ 0:07] 988 persons_0 = 0; [ 0:07] 989 persons_1 = 0; [ 0:07] 990 persons_2 = 0; [ 0:07] 991 persons_3 = 0; [ 0:07] 992 persons_4 = 0; [ 0:07] 993 persons_5 = 0; [ 0:07] 994 initFloors(); [ 0:07] 995 } [ 0:07] 996 return; [ 0:07] 997 } [ 0:07] 998 } [ 0:07] 999 void initBottomUp(void) [ 0:07] 1000 { [ 0:07] 1001 [ 0:07] 1002 { [ 0:07] 1003 { [ 0:07] 1004 currentFloorID = 0; [ 0:07] 1005 currentHeading = 1; [ 0:07] 1006 floorButtons_0 = 0; [ 0:07] 1007 floorButtons_1 = 0; [ 0:07] 1008 floorButtons_2 = 0; [ 0:07] 1009 floorButtons_3 = 0; [ 0:07] 1010 floorButtons_4 = 0; [ 0:07] 1011 persons_0 = 0; [ 0:07] 1012 persons_1 = 0; [ 0:07] 1013 persons_2 = 0; [ 0:07] 1014 persons_3 = 0; [ 0:07] 1015 persons_4 = 0; [ 0:07] 1016 persons_5 = 0; [ 0:07] 1017 initFloors(); [ 0:07] 1018 } [ 0:07] 1019 return; [ 0:07] 1020 } [ 0:07] 1021 } [ 0:07] 1022 int isBlocked(void) [ 0:07] 1023 { int retValue_acc ; [ 0:07] 1024 [ 0:07] 1025 { [ 0:07] 1026 retValue_acc = 0; [ 0:07] 1027 return (retValue_acc); [ 0:07] 1028 return (retValue_acc); [ 0:07] 1029 } [ 0:07] 1030 } [ 0:07] 1031 void enterElevator(int p ) [ 0:07] 1032 { [ 0:07] 1033 [ 0:07] 1034 { [ 0:07] 1035 if (p == 0) { [ 0:07] 1036 persons_0 = 1; [ 0:07] 1037 } else { [ 0:07] 1038 if (p == 1) { [ 0:07] 1039 persons_1 = 1; [ 0:07] 1040 } else { [ 0:07] 1041 if (p == 2) { [ 0:07] 1042 persons_2 = 1; [ 0:07] 1043 } else { [ 0:07] 1044 if (p == 3) { [ 0:07] 1045 persons_3 = 1; [ 0:07] 1046 } else { [ 0:07] 1047 if (p == 4) { [ 0:07] 1048 persons_4 = 1; [ 0:07] 1049 } else { [ 0:07] 1050 if (p == 5) { [ 0:07] 1051 persons_5 = 1; [ 0:07] 1052 } else { [ 0:07] 1053 [ 0:07] 1054 } [ 0:07] 1055 } [ 0:07] 1056 } [ 0:07] 1057 } [ 0:07] 1058 } [ 0:07] 1059 } [ 0:07] 1060 return; [ 0:07] 1061 } [ 0:07] 1062 } [ 0:07] 1063 void leaveElevator__wrappee__base(int p ) [ 0:07] 1064 { [ 0:07] 1065 [ 0:07] 1066 { [ 0:07] 1067 if (p == 0) { [ 0:07] 1068 persons_0 = 0; [ 0:07] 1069 } else { [ 0:07] 1070 if (p == 1) { [ 0:07] 1071 persons_1 = 0; [ 0:07] 1072 } else { [ 0:07] 1073 if (p == 2) { [ 0:07] 1074 persons_2 = 0; [ 0:07] 1075 } else { [ 0:07] 1076 if (p == 3) { [ 0:07] 1077 persons_3 = 0; [ 0:07] 1078 } else { [ 0:07] 1079 if (p == 4) { [ 0:07] 1080 persons_4 = 0; [ 0:07] 1081 } else { [ 0:07] 1082 if (p == 5) { [ 0:07] 1083 persons_5 = 0; [ 0:07] 1084 } else { [ 0:07] 1085 [ 0:07] 1086 } [ 0:07] 1087 } [ 0:07] 1088 } [ 0:07] 1089 } [ 0:07] 1090 } [ 0:07] 1091 } [ 0:07] 1092 return; [ 0:07] 1093 } [ 0:07] 1094 } [ 0:07] 1095 void leaveElevator(int p ) [ 0:07] 1096 { int tmp ; [ 0:07] 1097 [ 0:07] 1098 { [ 0:07] 1099 { [ 0:07] 1100 leaveElevator__wrappee__base(p); [ 0:07] 1101 tmp = isEmpty(); [ 0:07] 1102 } [ 0:07] 1103 if (tmp) { [ 0:07] 1104 floorButtons_0 = 0; [ 0:07] 1105 floorButtons_1 = 0; [ 0:07] 1106 floorButtons_2 = 0; [ 0:07] 1107 floorButtons_3 = 0; [ 0:07] 1108 floorButtons_4 = 0; [ 0:07] 1109 } else { [ 0:07] 1110 [ 0:07] 1111 } [ 0:07] 1112 return; [ 0:07] 1113 } [ 0:07] 1114 } [ 0:07] 1115 void pressInLiftFloorButton(int floorID ) [ 0:07] 1116 { [ 0:07] 1117 [ 0:07] 1118 { [ 0:07] 1119 if (floorID == 0) { [ 0:07] 1120 floorButtons_0 = 1; [ 0:07] 1121 } else { [ 0:07] 1122 if (floorID == 1) { [ 0:07] 1123 floorButtons_1 = 1; [ 0:07] 1124 } else { [ 0:07] 1125 if (floorID == 2) { [ 0:07] 1126 floorButtons_2 = 1; [ 0:07] 1127 } else { [ 0:07] 1128 if (floorID == 3) { [ 0:07] 1129 floorButtons_3 = 1; [ 0:07] 1130 } else { [ 0:07] 1131 if (floorID == 4) { [ 0:07] 1132 floorButtons_4 = 1; [ 0:07] 1133 } else { [ 0:07] 1134 [ 0:07] 1135 } [ 0:07] 1136 } [ 0:07] 1137 } [ 0:07] 1138 } [ 0:07] 1139 } [ 0:07] 1140 return; [ 0:07] 1141 } [ 0:07] 1142 } [ 0:07] 1143 void resetFloorButton(int floorID ) [ 0:07] 1144 { [ 0:07] 1145 [ 0:07] 1146 { [ 0:07] 1147 if (floorID == 0) { [ 0:07] 1148 floorButtons_0 = 0; [ 0:07] 1149 } else { [ 0:07] 1150 if (floorID == 1) { [ 0:07] 1151 floorButtons_1 = 0; [ 0:07] 1152 } else { [ 0:07] 1153 if (floorID == 2) { [ 0:07] 1154 floorButtons_2 = 0; [ 0:07] 1155 } else { [ 0:07] 1156 if (floorID == 3) { [ 0:07] 1157 floorButtons_3 = 0; [ 0:07] 1158 } else { [ 0:07] 1159 if (floorID == 4) { [ 0:07] 1160 floorButtons_4 = 0; [ 0:07] 1161 } else { [ 0:07] 1162 [ 0:07] 1163 } [ 0:07] 1164 } [ 0:07] 1165 } [ 0:07] 1166 } [ 0:07] 1167 } [ 0:07] 1168 return; [ 0:07] 1169 } [ 0:07] 1170 } [ 0:07] 1171 int getCurrentFloorID(void) [ 0:07] 1172 { int retValue_acc ; [ 0:07] 1173 [ 0:07] 1174 { [ 0:07] 1175 retValue_acc = currentFloorID; [ 0:07] 1176 return (retValue_acc); [ 0:07] 1177 return (retValue_acc); [ 0:07] 1178 } [ 0:07] 1179 } [ 0:07] 1180 int areDoorsOpen(void) [ 0:07] 1181 { int retValue_acc ; [ 0:07] 1182 [ 0:07] 1183 { [ 0:07] 1184 retValue_acc = doorState; [ 0:07] 1185 return (retValue_acc); [ 0:07] 1186 return (retValue_acc); [ 0:07] 1187 } [ 0:07] 1188 } [ 0:07] 1189 int buttonForFloorIsPressed(int floorID ) [ 0:07] 1190 { int retValue_acc ; [ 0:07] 1191 [ 0:07] 1192 { [ 0:07] 1193 if (floorID == 0) { [ 0:07] 1194 retValue_acc = floorButtons_0; [ 0:07] 1195 return (retValue_acc); [ 0:07] 1196 } else { [ 0:07] 1197 if (floorID == 1) { [ 0:07] 1198 retValue_acc = floorButtons_1; [ 0:07] 1199 return (retValue_acc); [ 0:07] 1200 } else { [ 0:07] 1201 if (floorID == 2) { [ 0:07] 1202 retValue_acc = floorButtons_2; [ 0:07] 1203 return (retValue_acc); [ 0:07] 1204 } else { [ 0:07] 1205 if (floorID == 3) { [ 0:07] 1206 retValue_acc = floorButtons_3; [ 0:07] 1207 return (retValue_acc); [ 0:07] 1208 } else { [ 0:07] 1209 if (floorID == 4) { [ 0:07] 1210 retValue_acc = floorButtons_4; [ 0:07] 1211 return (retValue_acc); [ 0:07] 1212 } else { [ 0:07] 1213 retValue_acc = 0; [ 0:07] 1214 return (retValue_acc); [ 0:07] 1215 } [ 0:07] 1216 } [ 0:07] 1217 } [ 0:07] 1218 } [ 0:07] 1219 } [ 0:07] 1220 return (retValue_acc); [ 0:07] 1221 } [ 0:07] 1222 } [ 0:07] 1223 int getCurrentHeading(void) [ 0:07] 1224 { int retValue_acc ; [ 0:07] 1225 [ 0:07] 1226 { [ 0:07] 1227 retValue_acc = currentHeading; [ 0:07] 1228 return (retValue_acc); [ 0:07] 1229 return (retValue_acc); [ 0:07] 1230 } [ 0:07] 1231 } [ 0:07] 1232 int isEmpty(void) [ 0:07] 1233 { int retValue_acc ; [ 0:07] 1234 [ 0:07] 1235 { [ 0:07] 1236 if (persons_0 == 1) { [ 0:07] 1237 retValue_acc = 0; [ 0:07] 1238 return (retValue_acc); [ 0:07] 1239 } else { [ 0:07] 1240 if (persons_1 == 1) { [ 0:07] 1241 retValue_acc = 0; [ 0:07] 1242 return (retValue_acc); [ 0:07] 1243 } else { [ 0:07] 1244 if (persons_2 == 1) { [ 0:07] 1245 retValue_acc = 0; [ 0:07] 1246 return (retValue_acc); [ 0:07] 1247 } else { [ 0:07] 1248 if (persons_3 == 1) { [ 0:07] 1249 retValue_acc = 0; [ 0:07] 1250 return (retValue_acc); [ 0:07] 1251 } else { [ 0:07] 1252 if (persons_4 == 1) { [ 0:07] 1253 retValue_acc = 0; [ 0:07] 1254 return (retValue_acc); [ 0:07] 1255 } else { [ 0:07] 1256 if (persons_5 == 1) { [ 0:07] 1257 retValue_acc = 0; [ 0:07] 1258 return (retValue_acc); [ 0:07] 1259 } else { [ 0:07] 1260 [ 0:07] 1261 } [ 0:07] 1262 } [ 0:07] 1263 } [ 0:07] 1264 } [ 0:07] 1265 } [ 0:07] 1266 } [ 0:07] 1267 retValue_acc = 1; [ 0:07] 1268 return (retValue_acc); [ 0:07] 1269 return (retValue_acc); [ 0:07] 1270 } [ 0:07] 1271 } [ 0:07] 1272 int anyStopRequested(void) [ 0:07] 1273 { int retValue_acc ; [ 0:07] 1274 int tmp ; [ 0:07] 1275 int tmp___0 ; [ 0:07] 1276 int tmp___1 ; [ 0:07] 1277 int tmp___2 ; [ 0:07] 1278 int tmp___3 ; [ 0:07] 1279 [ 0:07] 1280 { [ 0:07] 1281 { [ 0:07] 1282 tmp___3 = isFloorCalling(0); [ 0:07] 1283 } [ 0:07] 1284 if (tmp___3) { [ 0:07] 1285 retValue_acc = 1; [ 0:07] 1286 return (retValue_acc); [ 0:07] 1287 } else { [ 0:07] 1288 if (floorButtons_0) { [ 0:07] 1289 retValue_acc = 1; [ 0:07] 1290 return (retValue_acc); [ 0:07] 1291 } else { [ 0:07] 1292 { [ 0:07] 1293 tmp___2 = isFloorCalling(1); [ 0:07] 1294 } [ 0:07] 1295 if (tmp___2) { [ 0:07] 1296 retValue_acc = 1; [ 0:07] 1297 return (retValue_acc); [ 0:07] 1298 } else { [ 0:07] 1299 if (floorButtons_1) { [ 0:07] 1300 retValue_acc = 1; [ 0:07] 1301 return (retValue_acc); [ 0:07] 1302 } else { [ 0:07] 1303 { [ 0:07] 1304 tmp___1 = isFloorCalling(2); [ 0:07] 1305 } [ 0:07] 1306 if (tmp___1) { [ 0:07] 1307 retValue_acc = 1; [ 0:07] 1308 return (retValue_acc); [ 0:07] 1309 } else { [ 0:07] 1310 if (floorButtons_2) { [ 0:07] 1311 retValue_acc = 1; [ 0:07] 1312 return (retValue_acc); [ 0:07] 1313 } else { [ 0:07] 1314 { [ 0:07] 1315 tmp___0 = isFloorCalling(3); [ 0:07] 1316 } [ 0:07] 1317 if (tmp___0) { [ 0:07] 1318 retValue_acc = 1; [ 0:07] 1319 return (retValue_acc); [ 0:07] 1320 } else { [ 0:07] 1321 if (floorButtons_3) { [ 0:07] 1322 retValue_acc = 1; [ 0:07] 1323 return (retValue_acc); [ 0:07] 1324 } else { [ 0:07] 1325 { [ 0:07] 1326 tmp = isFloorCalling(4); [ 0:07] 1327 } [ 0:07] 1328 if (tmp) { [ 0:07] 1329 retValue_acc = 1; [ 0:07] 1330 return (retValue_acc); [ 0:07] 1331 } else { [ 0:07] 1332 if (floorButtons_4) { [ 0:07] 1333 retValue_acc = 1; [ 0:07] 1334 return (retValue_acc); [ 0:07] 1335 } else { [ 0:07] 1336 [ 0:07] 1337 } [ 0:07] 1338 } [ 0:07] 1339 } [ 0:07] 1340 } [ 0:07] 1341 } [ 0:07] 1342 } [ 0:07] 1343 } [ 0:07] 1344 } [ 0:07] 1345 } [ 0:07] 1346 } [ 0:07] 1347 retValue_acc = 0; [ 0:07] 1348 return (retValue_acc); [ 0:07] 1349 return (retValue_acc); [ 0:07] 1350 } [ 0:07] 1351 } [ 0:07] 1352 int isIdle(void) [ 0:07] 1353 { int retValue_acc ; [ 0:07] 1354 int tmp ; [ 0:07] 1355 [ 0:07] 1356 { [ 0:07] 1357 { [ 0:07] 1358 tmp = anyStopRequested(); [ 0:07] 1359 retValue_acc = tmp == 0; [ 0:07] 1360 } [ 0:07] 1361 return (retValue_acc); [ 0:07] 1362 return (retValue_acc); [ 0:07] 1363 } [ 0:07] 1364 } [ 0:07] 1365 int stopRequestedInDirection(int dir , int respectFloorCalls , int respectInLiftCalls ) [ 0:07] 1366 { int retValue_acc ; [ 0:07] 1367 int tmp ; [ 0:07] 1368 int tmp___0 ; [ 0:07] 1369 int tmp___1 ; [ 0:07] 1370 int tmp___2 ; [ 0:07] 1371 int tmp___3 ; [ 0:07] 1372 int tmp___4 ; [ 0:07] 1373 int tmp___5 ; [ 0:07] 1374 int tmp___6 ; [ 0:07] 1375 int tmp___7 ; [ 0:07] 1376 int tmp___8 ; [ 0:07] 1377 int tmp___9 ; [ 0:07] 1378 [ 0:07] 1379 { [ 0:07] 1380 if (dir == 1) { [ 0:07] 1381 { [ 0:07] 1382 tmp = isTopFloor(currentFloorID); [ 0:07] 1383 } [ 0:07] 1384 if (tmp) { [ 0:07] 1385 retValue_acc = 0; [ 0:07] 1386 return (retValue_acc); [ 0:07] 1387 } else { [ 0:07] 1388 [ 0:07] 1389 } [ 0:07] 1390 if (currentFloorID < 0) { [ 0:07] 1391 if (respectFloorCalls) { [ 0:07] 1392 { [ 0:07] 1393 tmp___4 = isFloorCalling(0); [ 0:07] 1394 } [ 0:07] 1395 if (tmp___4) { [ 0:07] 1396 retValue_acc = 1; [ 0:07] 1397 return (retValue_acc); [ 0:07] 1398 } else { [ 0:07] 1399 goto _L___16; [ 0:07] 1400 } [ 0:07] 1401 } else { [ 0:07] 1402 goto _L___16; [ 0:07] 1403 } [ 0:07] 1404 } else { [ 0:07] 1405 _L___16: /* CIL Label */ [ 0:07] 1406 if (currentFloorID < 0) { [ 0:07] 1407 if (respectInLiftCalls) { [ 0:07] 1408 if (floorButtons_0) { [ 0:07] 1409 retValue_acc = 1; [ 0:07] 1410 return (retValue_acc); [ 0:07] 1411 } else { [ 0:07] 1412 goto _L___14; [ 0:07] 1413 } [ 0:07] 1414 } else { [ 0:07] 1415 goto _L___14; [ 0:07] 1416 } [ 0:07] 1417 } else { [ 0:07] 1418 _L___14: /* CIL Label */ [ 0:07] 1419 if (currentFloorID < 1) { [ 0:07] 1420 if (respectFloorCalls) { [ 0:07] 1421 { [ 0:07] 1422 tmp___3 = isFloorCalling(1); [ 0:07] 1423 } [ 0:07] 1424 if (tmp___3) { [ 0:07] 1425 retValue_acc = 1; [ 0:07] 1426 return (retValue_acc); [ 0:07] 1427 } else { [ 0:07] 1428 goto _L___12; [ 0:07] 1429 } [ 0:07] 1430 } else { [ 0:07] 1431 goto _L___12; [ 0:07] 1432 } [ 0:07] 1433 } else { [ 0:07] 1434 _L___12: /* CIL Label */ [ 0:07] 1435 if (currentFloorID < 1) { [ 0:07] 1436 if (respectInLiftCalls) { [ 0:07] 1437 if (floorButtons_1) { [ 0:07] 1438 retValue_acc = 1; [ 0:07] 1439 return (retValue_acc); [ 0:07] 1440 } else { [ 0:07] 1441 goto _L___10; [ 0:07] 1442 } [ 0:07] 1443 } else { [ 0:07] 1444 goto _L___10; [ 0:07] 1445 } [ 0:07] 1446 } else { [ 0:07] 1447 _L___10: /* CIL Label */ [ 0:07] 1448 if (currentFloorID < 2) { [ 0:07] 1449 if (respectFloorCalls) { [ 0:07] 1450 { [ 0:07] 1451 tmp___2 = isFloorCalling(2); [ 0:07] 1452 } [ 0:07] 1453 if (tmp___2) { [ 0:07] 1454 retValue_acc = 1; [ 0:07] 1455 return (retValue_acc); [ 0:07] 1456 } else { [ 0:07] 1457 goto _L___8; [ 0:07] 1458 } [ 0:07] 1459 } else { [ 0:07] 1460 goto _L___8; [ 0:07] 1461 } [ 0:07] 1462 } else { [ 0:07] 1463 _L___8: /* CIL Label */ [ 0:07] 1464 if (currentFloorID < 2) { [ 0:07] 1465 if (respectInLiftCalls) { [ 0:07] 1466 if (floorButtons_2) { [ 0:07] 1467 retValue_acc = 1; [ 0:07] 1468 return (retValue_acc); [ 0:07] 1469 } else { [ 0:07] 1470 goto _L___6; [ 0:07] 1471 } [ 0:07] 1472 } else { [ 0:07] 1473 goto _L___6; [ 0:07] 1474 } [ 0:07] 1475 } else { [ 0:07] 1476 _L___6: /* CIL Label */ [ 0:07] 1477 if (currentFloorID < 3) { [ 0:07] 1478 if (respectFloorCalls) { [ 0:07] 1479 { [ 0:07] 1480 tmp___1 = isFloorCalling(3); [ 0:07] 1481 } [ 0:07] 1482 if (tmp___1) { [ 0:07] 1483 retValue_acc = 1; [ 0:07] 1484 return (retValue_acc); [ 0:07] 1485 } else { [ 0:07] 1486 goto _L___4; [ 0:07] 1487 } [ 0:07] 1488 } else { [ 0:07] 1489 goto _L___4; [ 0:07] 1490 } [ 0:07] 1491 } else { [ 0:07] 1492 _L___4: /* CIL Label */ [ 0:07] 1493 if (currentFloorID < 3) { [ 0:07] 1494 if (respectInLiftCalls) { [ 0:07] 1495 if (floorButtons_3) { [ 0:07] 1496 retValue_acc = 1; [ 0:07] 1497 return (retValue_acc); [ 0:07] 1498 } else { [ 0:07] 1499 goto _L___2; [ 0:07] 1500 } [ 0:07] 1501 } else { [ 0:07] 1502 goto _L___2; [ 0:07] 1503 } [ 0:07] 1504 } else { [ 0:07] 1505 _L___2: /* CIL Label */ [ 0:07] 1506 if (currentFloorID < 4) { [ 0:07] 1507 if (respectFloorCalls) { [ 0:07] 1508 { [ 0:07] 1509 tmp___0 = isFloorCalling(4); [ 0:07] 1510 } [ 0:07] 1511 if (tmp___0) { [ 0:07] 1512 retValue_acc = 1; [ 0:07] 1513 return (retValue_acc); [ 0:07] 1514 } else { [ 0:07] 1515 goto _L___0; [ 0:07] 1516 } [ 0:07] 1517 } else { [ 0:07] 1518 goto _L___0; [ 0:07] 1519 } [ 0:07] 1520 } else { [ 0:07] 1521 _L___0: /* CIL Label */ [ 0:07] 1522 if (currentFloorID < 4) { [ 0:07] 1523 if (respectInLiftCalls) { [ 0:07] 1524 if (floorButtons_4) { [ 0:07] 1525 retValue_acc = 1; [ 0:07] 1526 return (retValue_acc); [ 0:07] 1527 } else { [ 0:07] 1528 retValue_acc = 0; [ 0:07] 1529 return (retValue_acc); [ 0:07] 1530 } [ 0:07] 1531 } else { [ 0:07] 1532 retValue_acc = 0; [ 0:07] 1533 return (retValue_acc); [ 0:07] 1534 } [ 0:07] 1535 } else { [ 0:07] 1536 retValue_acc = 0; [ 0:07] 1537 return (retValue_acc); [ 0:07] 1538 } [ 0:07] 1539 } [ 0:07] 1540 } [ 0:07] 1541 } [ 0:07] 1542 } [ 0:07] 1543 } [ 0:07] 1544 } [ 0:07] 1545 } [ 0:07] 1546 } [ 0:07] 1547 } [ 0:07] 1548 } else { [ 0:07] 1549 if (currentFloorID == 0) { [ 0:07] 1550 retValue_acc = 0; [ 0:07] 1551 return (retValue_acc); [ 0:07] 1552 } else { [ 0:07] 1553 [ 0:07] 1554 } [ 0:07] 1555 if (currentFloorID > 0) { [ 0:07] 1556 if (respectFloorCalls) { [ 0:07] 1557 { [ 0:07] 1558 tmp___9 = isFloorCalling(0); [ 0:07] 1559 } [ 0:07] 1560 if (tmp___9) { [ 0:07] 1561 retValue_acc = 1; [ 0:07] 1562 return (retValue_acc); [ 0:07] 1563 } else { [ 0:07] 1564 goto _L___34; [ 0:07] 1565 } [ 0:07] 1566 } else { [ 0:07] 1567 goto _L___34; [ 0:07] 1568 } [ 0:07] 1569 } else { [ 0:07] 1570 _L___34: /* CIL Label */ [ 0:07] 1571 if (currentFloorID > 0) { [ 0:07] 1572 if (respectInLiftCalls) { [ 0:07] 1573 if (floorButtons_0) { [ 0:07] 1574 retValue_acc = 1; [ 0:07] 1575 return (retValue_acc); [ 0:07] 1576 } else { [ 0:07] 1577 goto _L___32; [ 0:07] 1578 } [ 0:07] 1579 } else { [ 0:07] 1580 goto _L___32; [ 0:07] 1581 } [ 0:07] 1582 } else { [ 0:07] 1583 _L___32: /* CIL Label */ [ 0:07] 1584 if (currentFloorID > 1) { [ 0:07] 1585 if (respectFloorCalls) { [ 0:07] 1586 { [ 0:07] 1587 tmp___8 = isFloorCalling(1); [ 0:07] 1588 } [ 0:07] 1589 if (tmp___8) { [ 0:07] 1590 retValue_acc = 1; [ 0:07] 1591 return (retValue_acc); [ 0:07] 1592 } else { [ 0:07] 1593 goto _L___30; [ 0:07] 1594 } [ 0:07] 1595 } else { [ 0:07] 1596 goto _L___30; [ 0:07] 1597 } [ 0:07] 1598 } else { [ 0:07] 1599 _L___30: /* CIL Label */ [ 0:07] 1600 if (currentFloorID > 1) { [ 0:07] 1601 if (respectInLiftCalls) { [ 0:07] 1602 if (floorButtons_1) { [ 0:07] 1603 retValue_acc = 1; [ 0:07] 1604 return (retValue_acc); [ 0:07] 1605 } else { [ 0:07] 1606 goto _L___28; [ 0:07] 1607 } [ 0:07] 1608 } else { [ 0:07] 1609 goto _L___28; [ 0:07] 1610 } [ 0:07] 1611 } else { [ 0:07] 1612 _L___28: /* CIL Label */ [ 0:07] 1613 if (currentFloorID > 2) { [ 0:07] 1614 if (respectFloorCalls) { [ 0:07] 1615 { [ 0:07] 1616 tmp___7 = isFloorCalling(2); [ 0:07] 1617 } [ 0:07] 1618 if (tmp___7) { [ 0:07] 1619 retValue_acc = 1; [ 0:07] 1620 return (retValue_acc); [ 0:07] 1621 } else { [ 0:07] 1622 goto _L___26; [ 0:07] 1623 } [ 0:07] 1624 } else { [ 0:07] 1625 goto _L___26; [ 0:07] 1626 } [ 0:07] 1627 } else { [ 0:07] 1628 _L___26: /* CIL Label */ [ 0:07] 1629 if (currentFloorID > 2) { [ 0:07] 1630 if (respectInLiftCalls) { [ 0:07] 1631 if (floorButtons_2) { [ 0:07] 1632 retValue_acc = 1; [ 0:07] 1633 return (retValue_acc); [ 0:07] 1634 } else { [ 0:07] 1635 goto _L___24; [ 0:07] 1636 } [ 0:07] 1637 } else { [ 0:07] 1638 goto _L___24; [ 0:07] 1639 } [ 0:07] 1640 } else { [ 0:07] 1641 _L___24: /* CIL Label */ [ 0:07] 1642 if (currentFloorID > 3) { [ 0:07] 1643 if (respectFloorCalls) { [ 0:07] 1644 { [ 0:07] 1645 tmp___6 = isFloorCalling(3); [ 0:07] 1646 } [ 0:07] 1647 if (tmp___6) { [ 0:07] 1648 retValue_acc = 1; [ 0:07] 1649 return (retValue_acc); [ 0:07] 1650 } else { [ 0:07] 1651 goto _L___22; [ 0:07] 1652 } [ 0:07] 1653 } else { [ 0:07] 1654 goto _L___22; [ 0:07] 1655 } [ 0:07] 1656 } else { [ 0:07] 1657 _L___22: /* CIL Label */ [ 0:07] 1658 if (currentFloorID > 3) { [ 0:07] 1659 if (respectInLiftCalls) { [ 0:07] 1660 if (floorButtons_3) { [ 0:07] 1661 retValue_acc = 1; [ 0:07] 1662 return (retValue_acc); [ 0:07] 1663 } else { [ 0:07] 1664 goto _L___20; [ 0:07] 1665 } [ 0:07] 1666 } else { [ 0:07] 1667 goto _L___20; [ 0:07] 1668 } [ 0:07] 1669 } else { [ 0:07] 1670 _L___20: /* CIL Label */ [ 0:07] 1671 if (currentFloorID > 4) { [ 0:07] 1672 if (respectFloorCalls) { [ 0:07] 1673 { [ 0:07] 1674 tmp___5 = isFloorCalling(4); [ 0:07] 1675 } [ 0:07] 1676 if (tmp___5) { [ 0:07] 1677 retValue_acc = 1; [ 0:07] 1678 return (retValue_acc); [ 0:07] 1679 } else { [ 0:07] 1680 goto _L___18; [ 0:07] 1681 } [ 0:07] 1682 } else { [ 0:07] 1683 goto _L___18; [ 0:07] 1684 } [ 0:07] 1685 } else { [ 0:07] 1686 _L___18: /* CIL Label */ [ 0:07] 1687 if (currentFloorID > 4) { [ 0:07] 1688 if (respectInLiftCalls) { [ 0:07] 1689 if (floorButtons_4) { [ 0:07] 1690 retValue_acc = 1; [ 0:07] 1691 return (retValue_acc); [ 0:07] 1692 } else { [ 0:07] 1693 retValue_acc = 0; [ 0:07] 1694 return (retValue_acc); [ 0:07] 1695 } [ 0:07] 1696 } else { [ 0:07] 1697 retValue_acc = 0; [ 0:07] 1698 return (retValue_acc); [ 0:07] 1699 } [ 0:07] 1700 } else { [ 0:07] 1701 retValue_acc = 0; [ 0:07] 1702 return (retValue_acc); [ 0:07] 1703 } [ 0:07] 1704 } [ 0:07] 1705 } [ 0:07] 1706 } [ 0:07] 1707 } [ 0:07] 1708 } [ 0:07] 1709 } [ 0:07] 1710 } [ 0:07] 1711 } [ 0:07] 1712 } [ 0:07] 1713 } [ 0:07] 1714 return (retValue_acc); [ 0:07] 1715 } [ 0:07] 1716 } [ 0:07] 1717 int isAnyLiftButtonPressed(void) [ 0:07] 1718 { int retValue_acc ; [ 0:07] 1719 [ 0:07] 1720 { [ 0:07] 1721 if (floorButtons_0) { [ 0:07] 1722 retValue_acc = 1; [ 0:07] 1723 return (retValue_acc); [ 0:07] 1724 } else { [ 0:07] 1725 if (floorButtons_1) { [ 0:07] 1726 retValue_acc = 1; [ 0:07] 1727 return (retValue_acc); [ 0:07] 1728 } else { [ 0:07] 1729 if (floorButtons_2) { [ 0:07] 1730 retValue_acc = 1; [ 0:07] 1731 return (retValue_acc); [ 0:07] 1732 } else { [ 0:07] 1733 if (floorButtons_3) { [ 0:07] 1734 retValue_acc = 1; [ 0:07] 1735 return (retValue_acc); [ 0:07] 1736 } else { [ 0:07] 1737 if (floorButtons_4) { [ 0:07] 1738 retValue_acc = 1; [ 0:07] 1739 return (retValue_acc); [ 0:07] 1740 } else { [ 0:07] 1741 retValue_acc = 0; [ 0:07] 1742 return (retValue_acc); [ 0:07] 1743 } [ 0:07] 1744 } [ 0:07] 1745 } [ 0:07] 1746 } [ 0:07] 1747 } [ 0:07] 1748 return (retValue_acc); [ 0:07] 1749 } [ 0:07] 1750 } [ 0:07] 1751 void continueInDirection(int dir ) [ 0:07] 1752 { int tmp ; [ 0:07] 1753 [ 0:07] 1754 { [ 0:07] 1755 currentHeading = dir; [ 0:07] 1756 if (currentHeading == 1) { [ 0:07] 1757 { [ 0:07] 1758 tmp = isTopFloor(currentFloorID); [ 0:07] 1759 } [ 0:07] 1760 if (tmp) { [ 0:07] 1761 currentHeading = 0; [ 0:07] 1762 } else { [ 0:07] 1763 [ 0:07] 1764 } [ 0:07] 1765 } else { [ 0:07] 1766 if (currentFloorID == 0) { [ 0:07] 1767 currentHeading = 1; [ 0:07] 1768 } else { [ 0:07] 1769 [ 0:07] 1770 } [ 0:07] 1771 } [ 0:07] 1772 if (currentHeading == 1) { [ 0:07] 1773 currentFloorID = currentFloorID + 1; [ 0:07] 1774 } else { [ 0:07] 1775 currentFloorID = currentFloorID - 1; [ 0:07] 1776 } [ 0:07] 1777 return; [ 0:07] 1778 } [ 0:07] 1779 } [ 0:07] 1780 int stopRequestedAtCurrentFloor(void) [ 0:07] 1781 { int retValue_acc ; [ 0:07] 1782 int tmp ; [ 0:07] 1783 int tmp___0 ; [ 0:07] 1784 [ 0:07] 1785 { [ 0:07] 1786 { [ 0:07] 1787 tmp___0 = isFloorCalling(currentFloorID); [ 0:07] 1788 } [ 0:07] 1789 if (tmp___0) { [ 0:07] 1790 retValue_acc = 1; [ 0:07] 1791 return (retValue_acc); [ 0:07] 1792 } else { [ 0:07] 1793 { [ 0:07] 1794 tmp = buttonForFloorIsPressed(currentFloorID); [ 0:07] 1795 } [ 0:07] 1796 if (tmp) { [ 0:07] 1797 retValue_acc = 1; [ 0:07] 1798 return (retValue_acc); [ 0:07] 1799 } else { [ 0:07] 1800 retValue_acc = 0; [ 0:07] 1801 return (retValue_acc); [ 0:07] 1802 } [ 0:07] 1803 } [ 0:07] 1804 return (retValue_acc); [ 0:07] 1805 } [ 0:07] 1806 } [ 0:07] 1807 int getReverseHeading(int ofHeading ) [ 0:07] 1808 { int retValue_acc ; [ 0:07] 1809 [ 0:07] 1810 { [ 0:07] 1811 if (ofHeading == 0) { [ 0:07] 1812 retValue_acc = 1; [ 0:07] 1813 return (retValue_acc); [ 0:07] 1814 } else { [ 0:07] 1815 retValue_acc = 0; [ 0:07] 1816 return (retValue_acc); [ 0:07] 1817 } [ 0:07] 1818 return (retValue_acc); [ 0:07] 1819 } [ 0:07] 1820 } [ 0:07] 1821 void processWaitingOnFloor(int floorID ) [ 0:07] 1822 { int tmp ; [ 0:07] 1823 int tmp___0 ; [ 0:07] 1824 int tmp___1 ; [ 0:07] 1825 int tmp___2 ; [ 0:07] 1826 int tmp___3 ; [ 0:07] 1827 int tmp___4 ; [ 0:07] 1828 int tmp___5 ; [ 0:07] 1829 int tmp___6 ; [ 0:07] 1830 int tmp___7 ; [ 0:07] 1831 int tmp___8 ; [ 0:07] 1832 int tmp___9 ; [ 0:07] 1833 int tmp___10 ; [ 0:07] 1834 [ 0:07] 1835 { [ 0:07] 1836 { [ 0:07] 1837 tmp___0 = isPersonOnFloor(0, floorID); [ 0:07] 1838 } [ 0:07] 1839 if (tmp___0) { [ 0:07] 1840 { [ 0:07] 1841 removePersonFromFloor(0, floorID); [ 0:07] 1842 tmp = getDestination(0); [ 0:07] 1843 pressInLiftFloorButton(tmp); [ 0:07] 1844 enterElevator(0); [ 0:07] 1845 } [ 0:07] 1846 } else { [ 0:07] 1847 [ 0:07] 1848 } [ 0:07] 1849 { [ 0:07] 1850 tmp___2 = isPersonOnFloor(1, floorID); [ 0:07] 1851 } [ 0:07] 1852 if (tmp___2) { [ 0:07] 1853 { [ 0:07] 1854 removePersonFromFloor(1, floorID); [ 0:07] 1855 tmp___1 = getDestination(1); [ 0:07] 1856 pressInLiftFloorButton(tmp___1); [ 0:07] 1857 enterElevator(1); [ 0:07] 1858 } [ 0:07] 1859 } else { [ 0:07] 1860 [ 0:07] 1861 } [ 0:07] 1862 { [ 0:07] 1863 tmp___4 = isPersonOnFloor(2, floorID); [ 0:07] 1864 } [ 0:07] 1865 if (tmp___4) { [ 0:07] 1866 { [ 0:07] 1867 removePersonFromFloor(2, floorID); [ 0:07] 1868 tmp___3 = getDestination(2); [ 0:07] 1869 pressInLiftFloorButton(tmp___3); [ 0:07] 1870 enterElevator(2); [ 0:07] 1871 } [ 0:07] 1872 } else { [ 0:07] 1873 [ 0:07] 1874 } [ 0:07] 1875 { [ 0:07] 1876 tmp___6 = isPersonOnFloor(3, floorID); [ 0:07] 1877 } [ 0:07] 1878 if (tmp___6) { [ 0:07] 1879 { [ 0:07] 1880 removePersonFromFloor(3, floorID); [ 0:07] 1881 tmp___5 = getDestination(3); [ 0:07] 1882 pressInLiftFloorButton(tmp___5); [ 0:07] 1883 enterElevator(3); [ 0:07] 1884 } [ 0:07] 1885 } else { [ 0:07] 1886 [ 0:07] 1887 } [ 0:07] 1888 { [ 0:07] 1889 tmp___8 = isPersonOnFloor(4, floorID); [ 0:07] 1890 } [ 0:07] 1891 if (tmp___8) { [ 0:07] 1892 { [ 0:07] 1893 removePersonFromFloor(4, floorID); [ 0:07] 1894 tmp___7 = getDestination(4); [ 0:07] 1895 pressInLiftFloorButton(tmp___7); [ 0:07] 1896 enterElevator(4); [ 0:07] 1897 } [ 0:07] 1898 } else { [ 0:07] 1899 [ 0:07] 1900 } [ 0:07] 1901 { [ 0:07] 1902 tmp___10 = isPersonOnFloor(5, floorID); [ 0:07] 1903 } [ 0:07] 1904 if (tmp___10) { [ 0:07] 1905 { [ 0:07] 1906 removePersonFromFloor(5, floorID); [ 0:07] 1907 tmp___9 = getDestination(5); [ 0:07] 1908 pressInLiftFloorButton(tmp___9); [ 0:07] 1909 enterElevator(5); [ 0:07] 1910 } [ 0:07] 1911 } else { [ 0:07] 1912 [ 0:07] 1913 } [ 0:07] 1914 { [ 0:07] 1915 resetCallOnFloor(floorID); [ 0:07] 1916 } [ 0:07] 1917 return; [ 0:07] 1918 } [ 0:07] 1919 } [ 0:07] 1920 void __utac_acc__Specification3_spec__1(void) ; [ 0:07] 1921 void __utac_acc__Specification3_spec__2(void) ; [ 0:07] 1922 void timeShift(void) [ 0:07] 1923 { int tmp ; [ 0:07] 1924 int tmp___0 ; [ 0:07] 1925 int tmp___1 ; [ 0:07] 1926 int tmp___2 ; [ 0:07] 1927 int tmp___3 ; [ 0:07] 1928 int tmp___4 ; [ 0:07] 1929 int tmp___5 ; [ 0:07] 1930 int tmp___6 ; [ 0:07] 1931 int tmp___7 ; [ 0:07] 1932 int tmp___8 ; [ 0:07] 1933 int tmp___9 ; [ 0:07] 1934 [ 0:07] 1935 { [ 0:07] 1936 { [ 0:07] 1937 __utac_acc__Specification3_spec__1(); [ 0:07] 1938 tmp___9 = stopRequestedAtCurrentFloor(); [ 0:07] 1939 } [ 0:07] 1940 if (tmp___9) { [ 0:07] 1941 doorState = 1; [ 0:07] 1942 if (persons_0) { [ 0:07] 1943 { [ 0:07] 1944 tmp = getDestination(0); [ 0:07] 1945 } [ 0:07] 1946 if (tmp == currentFloorID) { [ 0:07] 1947 { [ 0:07] 1948 leaveElevator(0); [ 0:07] 1949 } [ 0:07] 1950 } else { [ 0:07] 1951 [ 0:07] 1952 } [ 0:07] 1953 } else { [ 0:07] 1954 [ 0:07] 1955 } [ 0:07] 1956 if (persons_1) { [ 0:07] 1957 { [ 0:07] 1958 tmp___0 = getDestination(1); [ 0:07] 1959 } [ 0:07] 1960 if (tmp___0 == currentFloorID) { [ 0:07] 1961 { [ 0:07] 1962 leaveElevator(1); [ 0:07] 1963 } [ 0:07] 1964 } else { [ 0:07] 1965 [ 0:07] 1966 } [ 0:07] 1967 } else { [ 0:07] 1968 [ 0:07] 1969 } [ 0:07] 1970 if (persons_2) { [ 0:07] 1971 { [ 0:07] 1972 tmp___1 = getDestination(2); [ 0:07] 1973 } [ 0:07] 1974 if (tmp___1 == currentFloorID) { [ 0:07] 1975 { [ 0:07] 1976 leaveElevator(2); [ 0:07] 1977 } [ 0:07] 1978 } else { [ 0:07] 1979 [ 0:07] 1980 } [ 0:07] 1981 } else { [ 0:07] 1982 [ 0:07] 1983 } [ 0:07] 1984 if (persons_3) { [ 0:07] 1985 { [ 0:07] 1986 tmp___2 = getDestination(3); [ 0:07] 1987 } [ 0:07] 1988 if (tmp___2 == currentFloorID) { [ 0:07] 1989 { [ 0:07] 1990 leaveElevator(3); [ 0:07] 1991 } [ 0:07] 1992 } else { [ 0:07] 1993 [ 0:07] 1994 } [ 0:07] 1995 } else { [ 0:07] 1996 [ 0:07] 1997 } [ 0:07] 1998 if (persons_4) { [ 0:07] 1999 { [ 0:07] 2000 tmp___3 = getDestination(4); [ 0:07] 2001 } [ 0:07] 2002 if (tmp___3 == currentFloorID) { [ 0:07] 2003 { [ 0:07] 2004 leaveElevator(4); [ 0:07] 2005 } [ 0:07] 2006 } else { [ 0:07] 2007 [ 0:07] 2008 } [ 0:07] 2009 } else { [ 0:07] 2010 [ 0:07] 2011 } [ 0:07] 2012 if (persons_5) { [ 0:07] 2013 { [ 0:07] 2014 tmp___4 = getDestination(5); [ 0:07] 2015 } [ 0:07] 2016 if (tmp___4 == currentFloorID) { [ 0:07] 2017 { [ 0:07] 2018 leaveElevator(5); [ 0:07] 2019 } [ 0:07] 2020 } else { [ 0:07] 2021 [ 0:07] 2022 } [ 0:07] 2023 } else { [ 0:07] 2024 [ 0:07] 2025 } [ 0:07] 2026 { [ 0:07] 2027 processWaitingOnFloor(currentFloorID); [ 0:07] 2028 resetFloorButton(currentFloorID); [ 0:07] 2029 } [ 0:07] 2030 } else { [ 0:07] 2031 if (doorState == 1) { [ 0:07] 2032 doorState = 0; [ 0:07] 2033 } else { [ 0:07] 2034 [ 0:07] 2035 } [ 0:07] 2036 { [ 0:07] 2037 tmp___8 = stopRequestedInDirection(currentHeading, 1, 1); [ 0:07] 2038 } [ 0:07] 2039 if (tmp___8) { [ 0:07] 2040 { [ 0:07] 2041 continueInDirection(currentHeading); [ 0:07] 2042 } [ 0:07] 2043 } else { [ 0:07] 2044 { [ 0:07] 2045 tmp___6 = getReverseHeading(currentHeading); [ 0:07] 2046 tmp___7 = stopRequestedInDirection(tmp___6, 1, 1); [ 0:07] 2047 } [ 0:07] 2048 if (tmp___7) { [ 0:07] 2049 { [ 0:07] 2050 tmp___5 = getReverseHeading(currentHeading); [ 0:07] 2051 continueInDirection(tmp___5); [ 0:07] 2052 } [ 0:07] 2053 } else { [ 0:07] 2054 { [ 0:07] 2055 continueInDirection(currentHeading); [ 0:07] 2056 } [ 0:07] 2057 } [ 0:07] 2058 } [ 0:07] 2059 } [ 0:07] 2060 { [ 0:07] 2061 __utac_acc__Specification3_spec__2(); [ 0:07] 2062 } [ 0:07] 2063 return; [ 0:07] 2064 } [ 0:07] 2065 } [ 0:07] 2066 void printState(void) [ 0:07] 2067 { int tmp ; [ 0:07] 2068 int tmp___0 ; [ 0:07] 2069 int tmp___1 ; [ 0:07] 2070 int tmp___2 ; [ 0:07] 2071 int tmp___3 ; [ 0:07] 2072 char const * __restrict __cil_tmp6 ; [ 0:07] 2073 char const * __restrict __cil_tmp7 ; [ 0:07] 2074 char const * __restrict __cil_tmp8 ; [ 0:07] 2075 char const * __restrict __cil_tmp9 ; [ 0:07] 2076 char const * __restrict __cil_tmp10 ; [ 0:07] 2077 char const * __restrict __cil_tmp11 ; [ 0:07] 2078 char const * __restrict __cil_tmp12 ; [ 0:07] 2079 char const * __restrict __cil_tmp13 ; [ 0:07] 2080 char const * __restrict __cil_tmp14 ; [ 0:07] 2081 char const * __restrict __cil_tmp15 ; [ 0:07] 2082 char const * __restrict __cil_tmp16 ; [ 0:07] 2083 char const * __restrict __cil_tmp17 ; [ 0:07] 2084 char const * __restrict __cil_tmp18 ; [ 0:07] 2085 char const * __restrict __cil_tmp19 ; [ 0:07] 2086 char const * __restrict __cil_tmp20 ; [ 0:07] 2087 char const * __restrict __cil_tmp21 ; [ 0:07] 2088 char const * __restrict __cil_tmp22 ; [ 0:07] 2089 char const * __restrict __cil_tmp23 ; [ 0:07] 2090 char const * __restrict __cil_tmp24 ; [ 0:07] 2091 char const * __restrict __cil_tmp25 ; [ 0:07] 2092 char const * __restrict __cil_tmp26 ; [ 0:07] 2093 [ 0:07] 2094 { [ 0:07] 2095 { [ 0:07] 2096 __cil_tmp6 = (char const * __restrict )"Elevator "; [ 0:07] 2097 printf(__cil_tmp6); [ 0:07] 2098 } [ 0:07] 2099 if (doorState) { [ 0:07] 2100 { [ 0:07] 2101 __cil_tmp7 = (char const * __restrict )"[_]"; [ 0:07] 2102 printf(__cil_tmp7); [ 0:07] 2103 } [ 0:07] 2104 } else { [ 0:07] 2105 { [ 0:07] 2106 __cil_tmp8 = (char const * __restrict )"[] "; [ 0:07] 2107 printf(__cil_tmp8); [ 0:07] 2108 } [ 0:07] 2109 } [ 0:07] 2110 { [ 0:07] 2111 __cil_tmp9 = (char const * __restrict )" at "; [ 0:07] 2112 printf(__cil_tmp9); [ 0:07] 2113 __cil_tmp10 = (char const * __restrict )"%i"; [ 0:07] 2114 printf(__cil_tmp10, currentFloorID); [ 0:07] 2115 __cil_tmp11 = (char const * __restrict )" heading "; [ 0:07] 2116 printf(__cil_tmp11); [ 0:07] 2117 } [ 0:07] 2118 if (currentHeading) { [ 0:07] 2119 { [ 0:07] 2120 __cil_tmp12 = (char const * __restrict )"up"; [ 0:07] 2121 printf(__cil_tmp12); [ 0:07] 2122 } [ 0:07] 2123 } else { [ 0:07] 2124 { [ 0:07] 2125 __cil_tmp13 = (char const * __restrict )"down"; [ 0:07] 2126 printf(__cil_tmp13); [ 0:07] 2127 } [ 0:07] 2128 } [ 0:07] 2129 { [ 0:07] 2130 __cil_tmp14 = (char const * __restrict )" IL_p:"; [ 0:07] 2131 printf(__cil_tmp14); [ 0:07] 2132 } [ 0:07] 2133 if (floorButtons_0) { [ 0:07] 2134 { [ 0:07] 2135 __cil_tmp15 = (char const * __restrict )" %i"; [ 0:07] 2136 printf(__cil_tmp15, 0); [ 0:07] 2137 } [ 0:07] 2138 } else { [ 0:07] 2139 [ 0:07] 2140 } [ 0:07] 2141 if (floorButtons_1) { [ 0:07] 2142 { [ 0:07] 2143 __cil_tmp16 = (char const * __restrict )" %i"; [ 0:07] 2144 printf(__cil_tmp16, 1); [ 0:07] 2145 } [ 0:07] 2146 } else { [ 0:07] 2147 [ 0:07] 2148 } [ 0:07] 2149 if (floorButtons_2) { [ 0:07] 2150 { [ 0:07] 2151 __cil_tmp17 = (char const * __restrict )" %i"; [ 0:07] 2152 printf(__cil_tmp17, 2); [ 0:07] 2153 } [ 0:07] 2154 } else { [ 0:07] 2155 [ 0:07] 2156 } [ 0:07] 2157 if (floorButtons_3) { [ 0:07] 2158 { [ 0:07] 2159 __cil_tmp18 = (char const * __restrict )" %i"; [ 0:07] 2160 printf(__cil_tmp18, 3); [ 0:07] 2161 } [ 0:07] 2162 } else { [ 0:07] 2163 [ 0:07] 2164 } [ 0:07] 2165 if (floorButtons_4) { [ 0:07] 2166 { [ 0:07] 2167 __cil_tmp19 = (char const * __restrict )" %i"; [ 0:07] 2168 printf(__cil_tmp19, 4); [ 0:07] 2169 } [ 0:07] 2170 } else { [ 0:07] 2171 [ 0:07] 2172 } [ 0:07] 2173 { [ 0:07] 2174 __cil_tmp20 = (char const * __restrict )" F_p:"; [ 0:07] 2175 printf(__cil_tmp20); [ 0:07] 2176 tmp = isFloorCalling(0); [ 0:07] 2177 } [ 0:07] 2178 if (tmp) { [ 0:07] 2179 { [ 0:07] 2180 __cil_tmp21 = (char const * __restrict )" %i"; [ 0:07] 2181 printf(__cil_tmp21, 0); [ 0:07] 2182 } [ 0:07] 2183 } else { [ 0:07] 2184 [ 0:07] 2185 } [ 0:07] 2186 { [ 0:07] 2187 tmp___0 = isFloorCalling(1); [ 0:07] 2188 } [ 0:07] 2189 if (tmp___0) { [ 0:07] 2190 { [ 0:07] 2191 __cil_tmp22 = (char const * __restrict )" %i"; [ 0:07] 2192 printf(__cil_tmp22, 1); [ 0:07] 2193 } [ 0:07] 2194 } else { [ 0:07] 2195 [ 0:07] 2196 } [ 0:07] 2197 { [ 0:07] 2198 tmp___1 = isFloorCalling(2); [ 0:07] 2199 } [ 0:07] 2200 if (tmp___1) { [ 0:07] 2201 { [ 0:07] 2202 __cil_tmp23 = (char const * __restrict )" %i"; [ 0:07] 2203 printf(__cil_tmp23, 2); [ 0:07] 2204 } [ 0:07] 2205 } else { [ 0:07] 2206 [ 0:07] 2207 } [ 0:07] 2208 { [ 0:07] 2209 tmp___2 = isFloorCalling(3); [ 0:07] 2210 } [ 0:07] 2211 if (tmp___2) { [ 0:07] 2212 { [ 0:07] 2213 __cil_tmp24 = (char const * __restrict )" %i"; [ 0:07] 2214 printf(__cil_tmp24, 3); [ 0:07] 2215 } [ 0:07] 2216 } else { [ 0:07] 2217 [ 0:07] 2218 } [ 0:07] 2219 { [ 0:07] 2220 tmp___3 = isFloorCalling(4); [ 0:07] 2221 } [ 0:07] 2222 if (tmp___3) { [ 0:07] 2223 { [ 0:07] 2224 __cil_tmp25 = (char const * __restrict )" %i"; [ 0:07] 2225 printf(__cil_tmp25, 4); [ 0:07] 2226 } [ 0:07] 2227 } else { [ 0:07] 2228 [ 0:07] 2229 } [ 0:07] 2230 { [ 0:07] 2231 __cil_tmp26 = (char const * __restrict )"\n"; [ 0:07] 2232 printf(__cil_tmp26); [ 0:07] 2233 } [ 0:07] 2234 return; [ 0:07] 2235 } [ 0:07] 2236 } [ 0:07] 2237 int existInLiftCallsInDirection(int d ) [ 0:07] 2238 { int retValue_acc ; [ 0:07] 2239 int i ; [ 0:07] 2240 int i___0 ; [ 0:07] 2241 [ 0:07] 2242 { [ 0:07] 2243 if (d == 1) { [ 0:07] 2244 i = 0; [ 0:07] 2245 i = currentFloorID + 1; [ 0:07] 2246 { [ 0:07] 2247 while (1) { [ 0:07] 2248 while_2_continue: /* CIL Label */ ; [ 0:07] 2249 if (i < 5) { [ 0:07] 2250 [ 0:07] 2251 } else { [ 0:07] 2252 goto while_2_break; [ 0:07] 2253 } [ 0:07] 2254 if (i == 0) { [ 0:07] 2255 if (floorButtons_0) { [ 0:07] 2256 retValue_acc = 1; [ 0:07] 2257 return (retValue_acc); [ 0:07] 2258 } else { [ 0:07] 2259 goto _L___2; [ 0:07] 2260 } [ 0:07] 2261 } else { [ 0:07] 2262 _L___2: /* CIL Label */ [ 0:07] 2263 if (i == 1) { [ 0:07] 2264 if (floorButtons_1) { [ 0:07] 2265 retValue_acc = 1; [ 0:07] 2266 return (retValue_acc); [ 0:07] 2267 } else { [ 0:07] 2268 goto _L___1; [ 0:07] 2269 } [ 0:07] 2270 } else { [ 0:07] 2271 _L___1: /* CIL Label */ [ 0:07] 2272 if (i == 2) { [ 0:07] 2273 if (floorButtons_2) { [ 0:07] 2274 retValue_acc = 1; [ 0:07] 2275 return (retValue_acc); [ 0:07] 2276 } else { [ 0:07] 2277 goto _L___0; [ 0:07] 2278 } [ 0:07] 2279 } else { [ 0:07] 2280 _L___0: /* CIL Label */ [ 0:07] 2281 if (i == 3) { [ 0:07] 2282 if (floorButtons_3) { [ 0:07] 2283 retValue_acc = 1; [ 0:07] 2284 return (retValue_acc); [ 0:07] 2285 } else { [ 0:07] 2286 goto _L; [ 0:07] 2287 } [ 0:07] 2288 } else { [ 0:07] 2289 _L: /* CIL Label */ [ 0:07] 2290 if (i == 4) { [ 0:07] 2291 if (floorButtons_4) { [ 0:07] 2292 retValue_acc = 1; [ 0:07] 2293 return (retValue_acc); [ 0:07] 2294 } else { [ 0:07] 2295 [ 0:07] 2296 } [ 0:07] 2297 } else { [ 0:07] 2298 [ 0:07] 2299 } [ 0:07] 2300 } [ 0:07] 2301 } [ 0:07] 2302 } [ 0:07] 2303 } [ 0:07] 2304 i = i + 1; [ 0:07] 2305 } [ 0:07] 2306 while_2_break: /* CIL Label */ ; [ 0:07] 2307 } [ 0:07] 2308 } else { [ 0:07] 2309 if (d == 0) { [ 0:07] 2310 i___0 = 0; [ 0:07] 2311 i___0 = currentFloorID - 1; [ 0:07] 2312 { [ 0:07] 2313 while (1) { [ 0:07] 2314 while_3_continue: /* CIL Label */ ; [ 0:07] 2315 if (i___0 >= 0) { [ 0:07] 2316 [ 0:07] 2317 } else { [ 0:07] 2318 goto while_3_break; [ 0:07] 2319 } [ 0:07] 2320 i___0 = currentFloorID + 1; [ 0:07] 2321 { [ 0:07] 2322 while (1) { [ 0:07] 2323 while_4_continue: /* CIL Label */ ; [ 0:07] 2324 if (i___0 < 5) { [ 0:07] 2325 [ 0:07] 2326 } else { [ 0:07] 2327 goto while_4_break; [ 0:07] 2328 } [ 0:07] 2329 if (i___0 == 0) { [ 0:07] 2330 if (floorButtons_0) { [ 0:07] 2331 retValue_acc = 1; [ 0:07] 2332 return (retValue_acc); [ 0:07] 2333 } else { [ 0:07] 2334 goto _L___6; [ 0:07] 2335 } [ 0:07] 2336 } else { [ 0:07] 2337 _L___6: /* CIL Label */ [ 0:07] 2338 if (i___0 == 1) { [ 0:07] 2339 if (floorButtons_1) { [ 0:07] 2340 retValue_acc = 1; [ 0:07] 2341 return (retValue_acc); [ 0:07] 2342 } else { [ 0:07] 2343 goto _L___5; [ 0:07] 2344 } [ 0:07] 2345 } else { [ 0:07] 2346 _L___5: /* CIL Label */ [ 0:07] 2347 if (i___0 == 2) { [ 0:07] 2348 if (floorButtons_2) { [ 0:07] 2349 retValue_acc = 1; [ 0:07] 2350 return (retValue_acc); [ 0:07] 2351 } else { [ 0:07] 2352 goto _L___4; [ 0:07] 2353 } [ 0:07] 2354 } else { [ 0:07] 2355 _L___4: /* CIL Label */ [ 0:07] 2356 if (i___0 == 3) { [ 0:07] 2357 if (floorButtons_3) { [ 0:07] 2358 retValue_acc = 1; [ 0:07] 2359 return (retValue_acc); [ 0:07] 2360 } else { [ 0:07] 2361 goto _L___3; [ 0:07] 2362 } [ 0:07] 2363 } else { [ 0:07] 2364 _L___3: /* CIL Label */ [ 0:07] 2365 if (i___0 == 4) { [ 0:07] 2366 if (floorButtons_4) { [ 0:07] 2367 retValue_acc = 1; [ 0:07] 2368 return (retValue_acc); [ 0:07] 2369 } else { [ 0:07] 2370 [ 0:07] 2371 } [ 0:07] 2372 } else { [ 0:07] 2373 [ 0:07] 2374 } [ 0:07] 2375 } [ 0:07] 2376 } [ 0:07] 2377 } [ 0:07] 2378 } [ 0:07] 2379 i___0 = i___0 + 1; [ 0:07] 2380 } [ 0:07] 2381 while_4_break: /* CIL Label */ ; [ 0:07] 2382 } [ 0:07] 2383 i___0 = i___0 - 1; [ 0:07] 2384 } [ 0:07] 2385 while_3_break: /* CIL Label */ ; [ 0:07] 2386 } [ 0:07] 2387 } else { [ 0:07] 2388 [ 0:07] 2389 } [ 0:07] 2390 } [ 0:07] 2391 retValue_acc = 0; [ 0:07] 2392 return (retValue_acc); [ 0:07] 2393 return (retValue_acc); [ 0:07] 2394 } [ 0:07] 2395 } [ 0:07] 2396 #pragma merger(0,"featureselect.i","") [ 0:07] 2397 int select_one(void) ; [ 0:07] 2398 void select_features(void) ; [ 0:07] 2399 void select_helpers(void) ; [ 0:07] 2400 int valid_product(void) ; [ 0:07] 2401 int select_one(void) [ 0:07] 2402 { int retValue_acc ; [ 0:07] 2403 int choice = __VERIFIER_nondet_int(); [ 0:07] 2404 [ 0:07] 2405 { [ 0:07] 2406 retValue_acc = choice; [ 0:07] 2407 return (retValue_acc); [ 0:07] 2408 return (retValue_acc); [ 0:07] 2409 } [ 0:07] 2410 } [ 0:07] 2411 void select_features(void) [ 0:07] 2412 { [ 0:07] 2413 [ 0:07] 2414 { [ 0:07] 2415 return; [ 0:07] 2416 } [ 0:07] 2417 } [ 0:07] 2418 void select_helpers(void) [ 0:07] 2419 { [ 0:07] 2420 [ 0:07] 2421 { [ 0:07] 2422 return; [ 0:07] 2423 } [ 0:07] 2424 } [ 0:07] 2425 int valid_product(void) [ 0:07] 2426 { int retValue_acc ; [ 0:07] 2427 [ 0:07] 2428 { [ 0:07] 2429 retValue_acc = 1; [ 0:07] 2430 return (retValue_acc); [ 0:07] 2431 return (retValue_acc); [ 0:07] 2432 } [ 0:07] 2433 } [ 0:07] 2434 #pragma merger(0,"Test.i","") [ 0:07] 2435 extern __attribute__((__nothrow__, __noreturn__)) void exit(int __status ) ; [ 0:07] 2436 int get_nondetMinMax07(void) [ 0:07] 2437 { int retValue_acc ; [ 0:07] 2438 int nd ; [ 0:07] 2439 nd = __VERIFIER_nondet_int(); [ 0:07] 2440 [ 0:07] 2441 { [ 0:07] 2442 if (nd == 0) { [ 0:07] 2443 retValue_acc = 0; [ 0:07] 2444 return (retValue_acc); [ 0:07] 2445 } else { [ 0:07] 2446 if (nd == 1) { [ 0:07] 2447 retValue_acc = 1; [ 0:07] 2448 return (retValue_acc); [ 0:07] 2449 } else { [ 0:07] 2450 if (nd == 2) { [ 0:07] 2451 retValue_acc = 2; [ 0:07] 2452 return (retValue_acc); [ 0:07] 2453 } else { [ 0:07] 2454 if (nd == 3) { [ 0:07] 2455 retValue_acc = 3; [ 0:07] 2456 return (retValue_acc); [ 0:07] 2457 } else { [ 0:07] 2458 if (nd == 4) { [ 0:07] 2459 retValue_acc = 4; [ 0:07] 2460 return (retValue_acc); [ 0:07] 2461 } else { [ 0:07] 2462 if (nd == 5) { [ 0:07] 2463 retValue_acc = 5; [ 0:07] 2464 return (retValue_acc); [ 0:07] 2465 } else { [ 0:07] 2466 if (nd == 6) { [ 0:07] 2467 retValue_acc = 6; [ 0:07] 2468 return (retValue_acc); [ 0:07] 2469 } else { [ 0:07] 2470 if (nd == 7) { [ 0:07] 2471 retValue_acc = 7; [ 0:07] 2472 return (retValue_acc); [ 0:07] 2473 } else { [ 0:07] 2474 { [ 0:07] 2475 exit(0); [ 0:07] 2476 } [ 0:07] 2477 } [ 0:07] 2478 } [ 0:07] 2479 } [ 0:07] 2480 } [ 0:07] 2481 } [ 0:07] 2482 } [ 0:07] 2483 } [ 0:07] 2484 } [ 0:07] 2485 return (retValue_acc); [ 0:07] 2486 } [ 0:07] 2487 } [ 0:07] 2488 void bobCall(void) [ 0:07] 2489 { int tmp ; [ 0:07] 2490 [ 0:07] 2491 { [ 0:07] 2492 { [ 0:07] 2493 tmp = getOrigin(0); [ 0:07] 2494 initPersonOnFloor(0, tmp); [ 0:07] 2495 } [ 0:07] 2496 return; [ 0:07] 2497 } [ 0:07] 2498 } [ 0:07] 2499 void aliceCall(void) [ 0:07] 2500 { int tmp ; [ 0:07] 2501 [ 0:07] 2502 { [ 0:07] 2503 { [ 0:07] 2504 tmp = getOrigin(1); [ 0:07] 2505 initPersonOnFloor(1, tmp); [ 0:07] 2506 } [ 0:07] 2507 return; [ 0:07] 2508 } [ 0:07] 2509 } [ 0:07] 2510 void angelinaCall(void) [ 0:07] 2511 { int tmp ; [ 0:07] 2512 [ 0:07] 2513 { [ 0:07] 2514 { [ 0:07] 2515 tmp = getOrigin(2); [ 0:07] 2516 initPersonOnFloor(2, tmp); [ 0:07] 2517 } [ 0:07] 2518 return; [ 0:07] 2519 } [ 0:07] 2520 } [ 0:07] 2521 void chuckCall(void) [ 0:07] 2522 { int tmp ; [ 0:07] 2523 [ 0:07] 2524 { [ 0:07] 2525 { [ 0:07] 2526 tmp = getOrigin(3); [ 0:07] 2527 initPersonOnFloor(3, tmp); [ 0:07] 2528 } [ 0:07] 2529 return; [ 0:07] 2530 } [ 0:07] 2531 } [ 0:07] 2532 void monicaCall(void) [ 0:07] 2533 { int tmp ; [ 0:07] 2534 [ 0:07] 2535 { [ 0:07] 2536 { [ 0:07] 2537 tmp = getOrigin(4); [ 0:07] 2538 initPersonOnFloor(4, tmp); [ 0:07] 2539 } [ 0:07] 2540 return; [ 0:07] 2541 } [ 0:07] 2542 } [ 0:07] 2543 void bigMacCall(void) [ 0:07] 2544 { int tmp ; [ 0:07] 2545 [ 0:07] 2546 { [ 0:07] 2547 { [ 0:07] 2548 tmp = getOrigin(5); [ 0:07] 2549 initPersonOnFloor(5, tmp); [ 0:07] 2550 } [ 0:07] 2551 return; [ 0:07] 2552 } [ 0:07] 2553 } [ 0:07] 2554 void threeTS(void) [ 0:07] 2555 { [ 0:07] 2556 [ 0:07] 2557 { [ 0:07] 2558 { [ 0:07] 2559 timeShift(); [ 0:07] 2560 timeShift(); [ 0:07] 2561 timeShift(); [ 0:07] 2562 } [ 0:07] 2563 return; [ 0:07] 2564 } [ 0:07] 2565 } [ 0:07] 2566 void cleanup(void) [ 0:07] 2567 { int i ; [ 0:07] 2568 int tmp ; [ 0:07] 2569 int tmp___0 ; [ 0:07] 2570 int __cil_tmp4 ; [ 0:07] 2571 [ 0:07] 2572 { [ 0:07] 2573 { [ 0:07] 2574 timeShift(); [ 0:07] 2575 i = 0; [ 0:07] 2576 } [ 0:07] 2577 { [ 0:07] 2578 while (1) { [ 0:07] 2579 while_5_continue: /* CIL Label */ ; [ 0:07] 2580 { [ 0:07] 2581 __cil_tmp4 = cleanupTimeShifts - 1; [ 0:07] 2582 if (i < __cil_tmp4) { [ 0:07] 2583 { [ 0:07] 2584 tmp___0 = isBlocked(); [ 0:07] 2585 } [ 0:07] 2586 if (tmp___0 != 1) { [ 0:07] 2587 [ 0:07] 2588 } else { [ 0:07] 2589 goto while_5_break; [ 0:07] 2590 } [ 0:07] 2591 } else { [ 0:07] 2592 goto while_5_break; [ 0:07] 2593 } [ 0:07] 2594 } [ 0:07] 2595 { [ 0:07] 2596 tmp = isIdle(); [ 0:07] 2597 } [ 0:07] 2598 if (tmp) { [ 0:07] 2599 return; [ 0:07] 2600 } else { [ 0:07] 2601 { [ 0:07] 2602 timeShift(); [ 0:07] 2603 } [ 0:07] 2604 } [ 0:07] 2605 i = i + 1; [ 0:07] 2606 } [ 0:07] 2607 while_5_break: /* CIL Label */ ; [ 0:07] 2608 } [ 0:07] 2609 return; [ 0:07] 2610 } [ 0:07] 2611 } [ 0:07] 2612 void randomSequenceOfActions(void) [ 0:07] 2613 { int maxLength ; [ 0:07] 2614 int tmp ; [ 0:07] 2615 int counter ; [ 0:07] 2616 int action ; [ 0:07] 2617 int tmp___0 ; [ 0:07] 2618 int origin ; [ 0:07] 2619 int tmp___1 ; [ 0:07] 2620 int tmp___2 ; [ 0:07] 2621 [ 0:07] 2622 { [ 0:07] 2623 { [ 0:07] 2624 maxLength = 4; [ 0:07] 2625 tmp = __VERIFIER_nondet_int(); [ 0:07] 2626 } [ 0:07] 2627 if (tmp) { [ 0:07] 2628 { [ 0:07] 2629 initTopDown(); [ 0:07] 2630 } [ 0:07] 2631 } else { [ 0:07] 2632 { [ 0:07] 2633 initBottomUp(); [ 0:07] 2634 } [ 0:07] 2635 } [ 0:07] 2636 counter = 0; [ 0:07] 2637 { [ 0:07] 2638 while (1) { [ 0:07] 2639 while_6_continue: /* CIL Label */ ; [ 0:07] 2640 if (counter < maxLength) { [ 0:07] 2641 [ 0:07] 2642 } else { [ 0:07] 2643 goto while_6_break; [ 0:07] 2644 } [ 0:07] 2645 { [ 0:07] 2646 counter = counter + 1; [ 0:07] 2647 tmp___0 = get_nondetMinMax07(); [ 0:07] 2648 action = tmp___0; [ 0:07] 2649 } [ 0:07] 2650 if (action < 6) { [ 0:07] 2651 { [ 0:07] 2652 tmp___1 = getOrigin(action); [ 0:07] 2653 origin = tmp___1; [ 0:07] 2654 initPersonOnFloor(action, origin); [ 0:07] 2655 } [ 0:07] 2656 } else { [ 0:07] 2657 if (action == 6) { [ 0:07] 2658 { [ 0:07] 2659 timeShift(); [ 0:07] 2660 } [ 0:07] 2661 } else { [ 0:07] 2662 if (action == 7) { [ 0:07] 2663 { [ 0:07] 2664 timeShift(); [ 0:07] 2665 timeShift(); [ 0:07] 2666 timeShift(); [ 0:07] 2667 } [ 0:07] 2668 } else { [ 0:07] 2669 [ 0:07] 2670 } [ 0:07] 2671 } [ 0:07] 2672 } [ 0:07] 2673 { [ 0:07] 2674 tmp___2 = isBlocked(); [ 0:07] 2675 } [ 0:07] 2676 if (tmp___2) { [ 0:07] 2677 return; [ 0:07] 2678 } else { [ 0:07] 2679 [ 0:07] 2680 } [ 0:07] 2681 } [ 0:07] 2682 while_6_break: /* CIL Label */ ; [ 0:07] 2683 } [ 0:07] 2684 { [ 0:07] 2685 cleanup(); [ 0:07] 2686 } [ 0:07] 2687 return; [ 0:07] 2688 } [ 0:07] 2689 } [ 0:07] 2690 void runTest_Simple(void) [ 0:07] 2691 { [ 0:07] 2692 [ 0:07] 2693 { [ 0:07] 2694 { [ 0:07] 2695 bigMacCall(); [ 0:07] 2696 angelinaCall(); [ 0:07] 2697 cleanup(); [ 0:07] 2698 } [ 0:07] 2699 return; [ 0:07] 2700 } [ 0:07] 2701 } [ 0:07] 2702 void Specification1(void) [ 0:07] 2703 { [ 0:07] 2704 [ 0:07] 2705 { [ 0:07] 2706 { [ 0:07] 2707 bigMacCall(); [ 0:07] 2708 angelinaCall(); [ 0:07] 2709 cleanup(); [ 0:07] 2710 } [ 0:07] 2711 return; [ 0:07] 2712 } [ 0:07] 2713 } [ 0:07] 2714 void Specification2(void) [ 0:07] 2715 { [ 0:07] 2716 [ 0:07] 2717 { [ 0:07] 2718 { [ 0:07] 2719 bigMacCall(); [ 0:07] 2720 cleanup(); [ 0:07] 2721 } [ 0:07] 2722 return; [ 0:07] 2723 } [ 0:07] 2724 } [ 0:07] 2725 void Specification3(void) [ 0:07] 2726 { [ 0:07] 2727 [ 0:07] 2728 { [ 0:07] 2729 { [ 0:07] 2730 bobCall(); [ 0:07] 2731 timeShift(); [ 0:07] 2732 timeShift(); [ 0:07] 2733 timeShift(); [ 0:07] 2734 timeShift(); [ 0:07] 2735 timeShift(); [ 0:07] 2736 bobCall(); [ 0:07] 2737 cleanup(); [ 0:07] 2738 } [ 0:07] 2739 return; [ 0:07] 2740 } [ 0:07] 2741 } [ 0:07] 2742 void setup(void) [ 0:07] 2743 { [ 0:07] 2744 [ 0:07] 2745 { [ 0:07] 2746 return; [ 0:07] 2747 } [ 0:07] 2748 } [ 0:07] 2749 void runTest(void) [ 0:07] 2750 { [ 0:07] 2751 [ 0:07] 2752 { [ 0:07] 2753 { [ 0:07] 2754 test(); [ 0:07] 2755 } [ 0:07] 2756 return; [ 0:07] 2757 } [ 0:07] 2758 } [ 0:07] 2759 int main(void) [ 0:07] 2760 { int retValue_acc ; [ 0:07] 2761 int tmp ; [ 0:07] 2762 [ 0:07] 2763 { [ 0:07] 2764 { [ 0:07] 2765 select_helpers(); [ 0:07] 2766 select_features(); [ 0:07] 2767 tmp = valid_product(); [ 0:07] 2768 } [ 0:07] 2769 if (tmp) { [ 0:07] 2770 { [ 0:07] 2771 setup(); [ 0:07] 2772 runTest(); [ 0:07] 2773 } [ 0:07] 2774 } else { [ 0:07] 2775 [ 0:07] 2776 } [ 0:07] 2777 retValue_acc = 0; [ 0:07] 2778 return (retValue_acc); [ 0:07] 2779 return (retValue_acc); [ 0:07] 2780 } [ 0:07] 2781 } [ 0:07] 2782 #pragma merger(0,"Specification3_spec.i","") [ 0:07] 2783 int expectedDirection = 0; [ 0:07] 2784 void __utac_acc__Specification3_spec__1(void) [ 0:07] 2785 { int currentFloorID___0 ; [ 0:07] 2786 int tmp ; [ 0:07] 2787 int tmp___0 ; [ 0:07] 2788 int tmp___1 ; [ 0:07] 2789 int tmp___2 ; [ 0:07] 2790 int tmp___3 ; [ 0:07] 2791 int tmp___4 ; [ 0:07] 2792 int tmp___5 ; [ 0:07] 2793 int tmp___6 ; [ 0:07] 2794 int tmp___7 ; [ 0:07] 2795 int tmp___8 ; [ 0:07] 2796 int tmp___9 ; [ 0:07] 2797 int tmp___10 ; [ 0:07] 2798 [ 0:07] 2799 { [ 0:07] 2800 { [ 0:07] 2801 expectedDirection = 0; [ 0:07] 2802 tmp = getCurrentFloorID(); [ 0:07] 2803 currentFloorID___0 = tmp; [ 0:07] 2804 tmp___10 = getCurrentHeading(); [ 0:07] 2805 } [ 0:07] 2806 if (tmp___10 == 1) { [ 0:07] 2807 if (currentFloorID___0 < 0) { [ 0:07] 2808 { [ 0:07] 2809 tmp___4 = buttonForFloorIsPressed(0); [ 0:07] 2810 } [ 0:07] 2811 if (tmp___4) { [ 0:07] 2812 expectedDirection = 1; [ 0:07] 2813 } else { [ 0:07] 2814 goto _L___2; [ 0:07] 2815 } [ 0:07] 2816 } else { [ 0:07] 2817 _L___2: /* CIL Label */ [ 0:07] 2818 if (currentFloorID___0 < 1) { [ 0:07] 2819 { [ 0:07] 2820 tmp___3 = buttonForFloorIsPressed(1); [ 0:07] 2821 } [ 0:07] 2822 if (tmp___3) { [ 0:07] 2823 expectedDirection = 1; [ 0:07] 2824 } else { [ 0:07] 2825 goto _L___1; [ 0:07] 2826 } [ 0:07] 2827 } else { [ 0:07] 2828 _L___1: /* CIL Label */ [ 0:07] 2829 if (currentFloorID___0 < 2) { [ 0:07] 2830 { [ 0:07] 2831 tmp___2 = buttonForFloorIsPressed(2); [ 0:07] 2832 } [ 0:07] 2833 if (tmp___2) { [ 0:07] 2834 expectedDirection = 1; [ 0:07] 2835 } else { [ 0:07] 2836 goto _L___0; [ 0:07] 2837 } [ 0:07] 2838 } else { [ 0:07] 2839 _L___0: /* CIL Label */ [ 0:07] 2840 if (currentFloorID___0 < 3) { [ 0:07] 2841 { [ 0:07] 2842 tmp___1 = buttonForFloorIsPressed(3); [ 0:07] 2843 } [ 0:07] 2844 if (tmp___1) { [ 0:07] 2845 expectedDirection = 1; [ 0:07] 2846 } else { [ 0:07] 2847 goto _L; [ 0:07] 2848 } [ 0:07] 2849 } else { [ 0:07] 2850 _L: /* CIL Label */ [ 0:07] 2851 if (currentFloorID___0 < 4) { [ 0:07] 2852 { [ 0:07] 2853 tmp___0 = buttonForFloorIsPressed(4); [ 0:07] 2854 } [ 0:07] 2855 if (tmp___0) { [ 0:07] 2856 expectedDirection = 1; [ 0:07] 2857 } else { [ 0:07] 2858 [ 0:07] 2859 } [ 0:07] 2860 } else { [ 0:07] 2861 [ 0:07] 2862 } [ 0:07] 2863 } [ 0:07] 2864 } [ 0:07] 2865 } [ 0:07] 2866 } [ 0:07] 2867 } else { [ 0:07] 2868 if (currentFloorID___0 > 0) { [ 0:07] 2869 { [ 0:07] 2870 tmp___9 = buttonForFloorIsPressed(0); [ 0:07] 2871 } [ 0:07] 2872 if (tmp___9) { [ 0:07] 2873 expectedDirection = -1; [ 0:07] 2874 } else { [ 0:07] 2875 goto _L___6; [ 0:07] 2876 } [ 0:07] 2877 } else { [ 0:07] 2878 _L___6: /* CIL Label */ [ 0:07] 2879 if (currentFloorID___0 > 1) { [ 0:07] 2880 { [ 0:07] 2881 tmp___8 = buttonForFloorIsPressed(1); [ 0:07] 2882 } [ 0:07] 2883 if (tmp___8) { [ 0:07] 2884 expectedDirection = -1; [ 0:07] 2885 } else { [ 0:07] 2886 goto _L___5; [ 0:07] 2887 } [ 0:07] 2888 } else { [ 0:07] 2889 _L___5: /* CIL Label */ [ 0:07] 2890 if (currentFloorID___0 > 2) { [ 0:07] 2891 { [ 0:07] 2892 tmp___7 = buttonForFloorIsPressed(2); [ 0:07] 2893 } [ 0:07] 2894 if (tmp___7) { [ 0:07] 2895 expectedDirection = -1; [ 0:07] 2896 } else { [ 0:07] 2897 goto _L___4; [ 0:07] 2898 } [ 0:07] 2899 } else { [ 0:07] 2900 _L___4: /* CIL Label */ [ 0:07] 2901 if (currentFloorID___0 > 3) { [ 0:07] 2902 { [ 0:07] 2903 tmp___6 = buttonForFloorIsPressed(3); [ 0:07] 2904 } [ 0:07] 2905 if (tmp___6) { [ 0:07] 2906 expectedDirection = -1; [ 0:07] 2907 } else { [ 0:07] 2908 goto _L___3; [ 0:07] 2909 } [ 0:07] 2910 } else { [ 0:07] 2911 _L___3: /* CIL Label */ [ 0:07] 2912 if (currentFloorID___0 > 4) { [ 0:07] 2913 { [ 0:07] 2914 tmp___5 = buttonForFloorIsPressed(4); [ 0:07] 2915 } [ 0:07] 2916 if (tmp___5) { [ 0:07] 2917 expectedDirection = -1; [ 0:07] 2918 } else { [ 0:07] 2919 [ 0:07] 2920 } [ 0:07] 2921 } else { [ 0:07] 2922 [ 0:07] 2923 } [ 0:07] 2924 } [ 0:07] 2925 } [ 0:07] 2926 } [ 0:07] 2927 } [ 0:07] 2928 } [ 0:07] 2929 return; [ 0:07] 2930 } [ 0:07] 2931 } [ 0:07] 2932 void __utac_acc__Specification3_spec__2(void) [ 0:07] 2933 { int tmp ; [ 0:07] 2934 int tmp___0 ; [ 0:07] 2935 [ 0:07] 2936 { [ 0:07] 2937 if (expectedDirection == -1) { [ 0:07] 2938 { [ 0:07] 2939 tmp___0 = getCurrentHeading(); [ 0:07] 2940 } [ 0:07] 2941 if (tmp___0 == 1) { [ 0:07] 2942 { [ 0:07] 2943 __automaton_fail(); [ 0:07] 2944 } [ 0:07] 2945 } else { [ 0:07] 2946 goto _L; [ 0:07] 2947 } [ 0:07] 2948 } else { [ 0:07] 2949 _L: /* CIL Label */ [ 0:07] 2950 if (expectedDirection == 1) { [ 0:07] 2951 { [ 0:07] 2952 tmp = getCurrentHeading(); [ 0:07] 2953 } [ 0:07] 2954 if (tmp == 0) { [ 0:07] 2955 { [ 0:07] 2956 __automaton_fail(); [ 0:07] 2957 } [ 0:07] 2958 } else { [ 0:07] 2959 [ 0:07] 2960 } [ 0:07] 2961 } else { [ 0:07] 2962 [ 0:07] 2963 } [ 0:07] 2964 } [ 0:07] 2965 return; [ 0:07] 2966 } [ 0:07] 2967 } [ 0:07] 2968 #pragma merger(0,"libacc.i","") [ 0:07] 2969 extern __attribute__((__nothrow__, __noreturn__)) void __assert_fail(char const *__assertion , [ 0:07] 2970 char const *__file , [ 0:07] 2971 unsigned int __line , [ 0:07] 2972 char const *__function ) ; [ 0:07] 2973 extern __attribute__((__nothrow__)) void *malloc(size_t __size ) __attribute__((__malloc__)) ; [ 0:07] 2974 extern __attribute__((__nothrow__)) void free(void *__ptr ) ; [ 0:07] 2975 void __utac__exception__cf_handler_set(void *exception , int (*cflow_func)(int , [ 0:07] 2976 int ) , [ 0:07] 2977 int val ) [ 0:07] 2978 { struct __UTAC__EXCEPTION *excep ; [ 0:07] 2979 struct __UTAC__CFLOW_FUNC *cf ; [ 0:07] 2980 void *tmp ; [ 0:07] 2981 unsigned long __cil_tmp7 ; [ 0:07] 2982 unsigned long __cil_tmp8 ; [ 0:07] 2983 unsigned long __cil_tmp9 ; [ 0:07] 2984 unsigned long __cil_tmp10 ; [ 0:07] 2985 unsigned long __cil_tmp11 ; [ 0:07] 2986 unsigned long __cil_tmp12 ; [ 0:07] 2987 unsigned long __cil_tmp13 ; [ 0:07] 2988 unsigned long __cil_tmp14 ; [ 0:07] 2989 int (**mem_15)(int , int ) ; [ 0:07] 2990 int *mem_16 ; [ 0:07] 2991 struct __UTAC__CFLOW_FUNC **mem_17 ; [ 0:07] 2992 struct __UTAC__CFLOW_FUNC **mem_18 ; [ 0:07] 2993 struct __UTAC__CFLOW_FUNC **mem_19 ; [ 0:07] 2994 [ 0:07] 2995 { [ 0:07] 2996 { [ 0:07] 2997 excep = (struct __UTAC__EXCEPTION *)exception; [ 0:07] 2998 tmp = malloc(24UL); [ 0:07] 2999 cf = (struct __UTAC__CFLOW_FUNC *)tmp; [ 0:07] 3000 mem_15 = (int (**)(int , int ))cf; [ 0:07] 3001 *mem_15 = cflow_func; [ 0:07] 3002 __cil_tmp7 = (unsigned long )cf; [ 0:07] 3003 __cil_tmp8 = __cil_tmp7 + 8; [ 0:07] 3004 mem_16 = (int *)__cil_tmp8; [ 0:07] 3005 *mem_16 = val; [ 0:07] 3006 __cil_tmp9 = (unsigned long )cf; [ 0:07] 3007 __cil_tmp10 = __cil_tmp9 + 16; [ 0:07] 3008 __cil_tmp11 = (unsigned long )excep; [ 0:07] 3009 __cil_tmp12 = __cil_tmp11 + 24; [ 0:07] 3010 mem_17 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp10; [ 0:07] 3011 mem_18 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp12; [ 0:07] 3012 *mem_17 = *mem_18; [ 0:07] 3013 __cil_tmp13 = (unsigned long )excep; [ 0:07] 3014 __cil_tmp14 = __cil_tmp13 + 24; [ 0:07] 3015 mem_19 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp14; [ 0:07] 3016 *mem_19 = cf; [ 0:07] 3017 } [ 0:07] 3018 return; [ 0:07] 3019 } [ 0:07] 3020 } [ 0:07] 3021 void __utac__exception__cf_handler_free(void *exception ) [ 0:07] 3022 { struct __UTAC__EXCEPTION *excep ; [ 0:07] 3023 struct __UTAC__CFLOW_FUNC *cf ; [ 0:07] 3024 struct __UTAC__CFLOW_FUNC *tmp ; [ 0:07] 3025 unsigned long __cil_tmp5 ; [ 0:07] 3026 unsigned long __cil_tmp6 ; [ 0:07] 3027 struct __UTAC__CFLOW_FUNC *__cil_tmp7 ; [ 0:07] 3028 unsigned long __cil_tmp8 ; [ 0:07] 3029 unsigned long __cil_tmp9 ; [ 0:07] 3030 unsigned long __cil_tmp10 ; [ 0:07] 3031 unsigned long __cil_tmp11 ; [ 0:07] 3032 void *__cil_tmp12 ; [ 0:07] 3033 unsigned long __cil_tmp13 ; [ 0:07] 3034 unsigned long __cil_tmp14 ; [ 0:07] 3035 struct __UTAC__CFLOW_FUNC **mem_15 ; [ 0:07] 3036 struct __UTAC__CFLOW_FUNC **mem_16 ; [ 0:07] 3037 struct __UTAC__CFLOW_FUNC **mem_17 ; [ 0:07] 3038 [ 0:07] 3039 { [ 0:07] 3040 excep = (struct __UTAC__EXCEPTION *)exception; [ 0:07] 3041 __cil_tmp5 = (unsigned long )excep; [ 0:07] 3042 __cil_tmp6 = __cil_tmp5 + 24; [ 0:07] 3043 mem_15 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp6; [ 0:07] 3044 cf = *mem_15; [ 0:07] 3045 { [ 0:07] 3046 while (1) { [ 0:07] 3047 while_7_continue: /* CIL Label */ ; [ 0:07] 3048 { [ 0:07] 3049 __cil_tmp7 = (struct __UTAC__CFLOW_FUNC *)0; [ 0:07] 3050 __cil_tmp8 = (unsigned long )__cil_tmp7; [ 0:07] 3051 __cil_tmp9 = (unsigned long )cf; [ 0:07] 3052 if (__cil_tmp9 != __cil_tmp8) { [ 0:07] 3053 [ 0:07] 3054 } else { [ 0:07] 3055 goto while_7_break; [ 0:07] 3056 } [ 0:07] 3057 } [ 0:07] 3058 { [ 0:07] 3059 tmp = cf; [ 0:07] 3060 __cil_tmp10 = (unsigned long )cf; [ 0:07] 3061 __cil_tmp11 = __cil_tmp10 + 16; [ 0:07] 3062 mem_16 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp11; [ 0:07] 3063 cf = *mem_16; [ 0:07] 3064 __cil_tmp12 = (void *)tmp; [ 0:07] 3065 free(__cil_tmp12); [ 0:07] 3066 } [ 0:07] 3067 } [ 0:07] 3068 while_7_break: /* CIL Label */ ; [ 0:07] 3069 } [ 0:07] 3070 __cil_tmp13 = (unsigned long )excep; [ 0:07] 3071 __cil_tmp14 = __cil_tmp13 + 24; [ 0:07] 3072 mem_17 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp14; [ 0:07] 3073 *mem_17 = (struct __UTAC__CFLOW_FUNC *)0; [ 0:07] 3074 return; [ 0:07] 3075 } [ 0:07] 3076 } [ 0:07] 3077 void __utac__exception__cf_handler_reset(void *exception ) [ 0:07] 3078 { struct __UTAC__EXCEPTION *excep ; [ 0:07] 3079 struct __UTAC__CFLOW_FUNC *cf ; [ 0:07] 3080 unsigned long __cil_tmp5 ; [ 0:07] 3081 unsigned long __cil_tmp6 ; [ 0:07] 3082 struct __UTAC__CFLOW_FUNC *__cil_tmp7 ; [ 0:07] 3083 unsigned long __cil_tmp8 ; [ 0:07] 3084 unsigned long __cil_tmp9 ; [ 0:07] 3085 int (*__cil_tmp10)(int , int ) ; [ 0:07] 3086 unsigned long __cil_tmp11 ; [ 0:07] 3087 unsigned long __cil_tmp12 ; [ 0:07] 3088 int __cil_tmp13 ; [ 0:07] 3089 unsigned long __cil_tmp14 ; [ 0:07] 3090 unsigned long __cil_tmp15 ; [ 0:07] 3091 struct __UTAC__CFLOW_FUNC **mem_16 ; [ 0:07] 3092 int (**mem_17)(int , int ) ; [ 0:07] 3093 int *mem_18 ; [ 0:07] 3094 struct __UTAC__CFLOW_FUNC **mem_19 ; [ 0:07] 3095 [ 0:07] 3096 { [ 0:07] 3097 excep = (struct __UTAC__EXCEPTION *)exception; [ 0:07] 3098 __cil_tmp5 = (unsigned long )excep; [ 0:07] 3099 __cil_tmp6 = __cil_tmp5 + 24; [ 0:07] 3100 mem_16 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp6; [ 0:07] 3101 cf = *mem_16; [ 0:07] 3102 { [ 0:07] 3103 while (1) { [ 0:07] 3104 while_8_continue: /* CIL Label */ ; [ 0:07] 3105 { [ 0:07] 3106 __cil_tmp7 = (struct __UTAC__CFLOW_FUNC *)0; [ 0:07] 3107 __cil_tmp8 = (unsigned long )__cil_tmp7; [ 0:07] 3108 __cil_tmp9 = (unsigned long )cf; [ 0:07] 3109 if (__cil_tmp9 != __cil_tmp8) { [ 0:07] 3110 [ 0:07] 3111 } else { [ 0:07] 3112 goto while_8_break; [ 0:07] 3113 } [ 0:07] 3114 } [ 0:07] 3115 { [ 0:07] 3116 mem_17 = (int (**)(int , int ))cf; [ 0:07] 3117 __cil_tmp10 = *mem_17; [ 0:07] 3118 __cil_tmp11 = (unsigned long )cf; [ 0:07] 3119 __cil_tmp12 = __cil_tmp11 + 8; [ 0:07] 3120 mem_18 = (int *)__cil_tmp12; [ 0:07] 3121 __cil_tmp13 = *mem_18; [ 0:07] 3122 (*__cil_tmp10)(4, __cil_tmp13); [ 0:07] 3123 __cil_tmp14 = (unsigned long )cf; [ 0:07] 3124 __cil_tmp15 = __cil_tmp14 + 16; [ 0:07] 3125 mem_19 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp15; [ 0:07] 3126 cf = *mem_19; [ 0:07] 3127 } [ 0:07] 3128 } [ 0:07] 3129 while_8_break: /* CIL Label */ ; [ 0:07] 3130 } [ 0:07] 3131 { [ 0:07] 3132 __utac__exception__cf_handler_free(exception); [ 0:07] 3133 } [ 0:07] 3134 return; [ 0:07] 3135 } [ 0:07] 3136 } [ 0:07] 3137 void *__utac__error_stack_mgt(void *env , int mode , int count ) ; [ 0:07] 3138 static struct __ACC__ERR *head = (struct __ACC__ERR *)0; [ 0:07] 3139 void *__utac__error_stack_mgt(void *env , int mode , int count ) [ 0:07] 3140 { void *retValue_acc ; [ 0:07] 3141 struct __ACC__ERR *new ; [ 0:07] 3142 void *tmp ; [ 0:07] 3143 struct __ACC__ERR *temp ; [ 0:07] 3144 struct __ACC__ERR *next ; [ 0:07] 3145 void *excep ; [ 0:07] 3146 unsigned long __cil_tmp10 ; [ 0:07] 3147 unsigned long __cil_tmp11 ; [ 0:07] 3148 unsigned long __cil_tmp12 ; [ 0:07] 3149 unsigned long __cil_tmp13 ; [ 0:07] 3150 void *__cil_tmp14 ; [ 0:07] 3151 unsigned long __cil_tmp15 ; [ 0:07] 3152 unsigned long __cil_tmp16 ; [ 0:07] 3153 void *__cil_tmp17 ; [ 0:07] 3154 void **mem_18 ; [ 0:07] 3155 struct __ACC__ERR **mem_19 ; [ 0:07] 3156 struct __ACC__ERR **mem_20 ; [ 0:07] 3157 void **mem_21 ; [ 0:07] 3158 struct __ACC__ERR **mem_22 ; [ 0:07] 3159 void **mem_23 ; [ 0:07] 3160 void **mem_24 ; [ 0:07] 3161 [ 0:07] 3162 { [ 0:07] 3163 if (count == 0) { [ 0:07] 3164 return (retValue_acc); [ 0:07] 3165 } else { [ 0:07] 3166 [ 0:07] 3167 } [ 0:07] 3168 if (mode == 0) { [ 0:07] 3169 { [ 0:07] 3170 tmp = malloc(16UL); [ 0:07] 3171 new = (struct __ACC__ERR *)tmp; [ 0:07] 3172 mem_18 = (void **)new; [ 0:07] 3173 *mem_18 = env; [ 0:07] 3174 __cil_tmp10 = (unsigned long )new; [ 0:07] 3175 __cil_tmp11 = __cil_tmp10 + 8; [ 0:07] 3176 mem_19 = (struct __ACC__ERR **)__cil_tmp11; [ 0:07] 3177 *mem_19 = head; [ 0:07] 3178 head = new; [ 0:07] 3179 retValue_acc = (void *)new; [ 0:07] 3180 } [ 0:07] 3181 return (retValue_acc); [ 0:07] 3182 } else { [ 0:07] 3183 [ 0:07] 3184 } [ 0:07] 3185 if (mode == 1) { [ 0:07] 3186 temp = head; [ 0:07] 3187 { [ 0:07] 3188 while (1) { [ 0:07] 3189 while_9_continue: /* CIL Label */ ; [ 0:07] 3190 if (count > 1) { [ 0:07] 3191 [ 0:07] 3192 } else { [ 0:07] 3193 goto while_9_break; [ 0:07] 3194 } [ 0:07] 3195 { [ 0:07] 3196 __cil_tmp12 = (unsigned long )temp; [ 0:07] 3197 __cil_tmp13 = __cil_tmp12 + 8; [ 0:07] 3198 mem_20 = (struct __ACC__ERR **)__cil_tmp13; [ 0:07] 3199 next = *mem_20; [ 0:07] 3200 mem_21 = (void **)temp; [ 0:07] 3201 excep = *mem_21; [ 0:07] 3202 __cil_tmp14 = (void *)temp; [ 0:07] 3203 free(__cil_tmp14); [ 0:07] 3204 __utac__exception__cf_handler_reset(excep); [ 0:07] 3205 temp = next; [ 0:07] 3206 count = count - 1; [ 0:07] 3207 } [ 0:07] 3208 } [ 0:07] 3209 while_9_break: /* CIL Label */ ; [ 0:07] 3210 } [ 0:07] 3211 { [ 0:07] 3212 __cil_tmp15 = (unsigned long )temp; [ 0:07] 3213 __cil_tmp16 = __cil_tmp15 + 8; [ 0:07] 3214 mem_22 = (struct __ACC__ERR **)__cil_tmp16; [ 0:07] 3215 head = *mem_22; [ 0:07] 3216 mem_23 = (void **)temp; [ 0:07] 3217 excep = *mem_23; [ 0:07] 3218 __cil_tmp17 = (void *)temp; [ 0:07] 3219 free(__cil_tmp17); [ 0:07] 3220 __utac__exception__cf_handler_reset(excep); [ 0:07] 3221 retValue_acc = excep; [ 0:07] 3222 } [ 0:07] 3223 return (retValue_acc); [ 0:07] 3224 } else { [ 0:07] 3225 [ 0:07] 3226 } [ 0:07] 3227 if (mode == 2) { [ 0:07] 3228 if (head) { [ 0:07] 3229 mem_24 = (void **)head; [ 0:07] 3230 retValue_acc = *mem_24; [ 0:07] 3231 return (retValue_acc); [ 0:07] 3232 } else { [ 0:07] 3233 retValue_acc = (void *)0; [ 0:07] 3234 return (retValue_acc); [ 0:07] 3235 } [ 0:07] 3236 } else { [ 0:07] 3237 [ 0:07] 3238 } [ 0:07] 3239 return (retValue_acc); [ 0:07] 3240 } [ 0:07] 3241 } [ 0:07] 3242 void *__utac__get_this_arg(int i , struct JoinPoint *this ) [ 0:07] 3243 { void *retValue_acc ; [ 0:07] 3244 unsigned long __cil_tmp4 ; [ 0:07] 3245 unsigned long __cil_tmp5 ; [ 0:07] 3246 int __cil_tmp6 ; [ 0:07] 3247 int __cil_tmp7 ; [ 0:07] 3248 unsigned long __cil_tmp8 ; [ 0:07] 3249 unsigned long __cil_tmp9 ; [ 0:07] 3250 void **__cil_tmp10 ; [ 0:07] 3251 void **__cil_tmp11 ; [ 0:07] 3252 int *mem_12 ; [ 0:07] 3253 void ***mem_13 ; [ 0:07] 3254 [ 0:07] 3255 { [ 0:07] 3256 if (i > 0) { [ 0:07] 3257 { [ 0:07] 3258 __cil_tmp4 = (unsigned long )this; [ 0:07] 3259 __cil_tmp5 = __cil_tmp4 + 16; [ 0:07] 3260 mem_12 = (int *)__cil_tmp5; [ 0:07] 3261 __cil_tmp6 = *mem_12; [ 0:07] 3262 if (i <= __cil_tmp6) { [ 0:07] 3263 [ 0:07] 3264 } else { [ 0:07] 3265 { [ 0:07] 3266 __assert_fail("i > 0 && i <= this->argsCount", "libacc.c", [ 0:07] 3267 123U, "__utac__get_this_arg"); [ 0:07] 3268 } [ 0:07] 3269 } [ 0:07] 3270 } [ 0:07] 3271 } else { [ 0:07] 3272 { [ 0:07] 3273 __assert_fail("i > 0 && i <= this->argsCount", "libacc.c", [ 0:07] 3274 123U, "__utac__get_this_arg"); [ 0:07] 3275 } [ 0:07] 3276 } [ 0:07] 3277 __cil_tmp7 = i - 1; [ 0:07] 3278 __cil_tmp8 = (unsigned long )this; [ 0:07] 3279 __cil_tmp9 = __cil_tmp8 + 8; [ 0:07] 3280 mem_13 = (void ***)__cil_tmp9; [ 0:07] 3281 __cil_tmp10 = *mem_13; [ 0:07] 3282 __cil_tmp11 = __cil_tmp10 + __cil_tmp7; [ 0:07] 3283 retValue_acc = *__cil_tmp11; [ 0:07] 3284 return (retValue_acc); [ 0:07] 3285 return (retValue_acc); [ 0:07] 3286 } [ 0:07] 3287 } [ 0:07] 3288 char const *__utac__get_this_argtype(int i , struct JoinPoint *this ) [ 0:07] 3289 { char const *retValue_acc ; [ 0:07] 3290 unsigned long __cil_tmp4 ; [ 0:07] 3291 unsigned long __cil_tmp5 ; [ 0:07] 3292 int __cil_tmp6 ; [ 0:07] 3293 int __cil_tmp7 ; [ 0:07] 3294 unsigned long __cil_tmp8 ; [ 0:07] 3295 unsigned long __cil_tmp9 ; [ 0:07] 3296 char const **__cil_tmp10 ; [ 0:07] 3297 char const **__cil_tmp11 ; [ 0:07] 3298 int *mem_12 ; [ 0:07] 3299 char const ***mem_13 ; [ 0:07] 3300 [ 0:07] 3301 { [ 0:07] 3302 if (i > 0) { [ 0:07] 3303 { [ 0:07] 3304 __cil_tmp4 = (unsigned long )this; [ 0:07] 3305 __cil_tmp5 = __cil_tmp4 + 16; [ 0:07] 3306 mem_12 = (int *)__cil_tmp5; [ 0:07] 3307 __cil_tmp6 = *mem_12; [ 0:07] 3308 if (i <= __cil_tmp6) { [ 0:07] 3309 [ 0:07] 3310 } else { [ 0:07] 3311 { [ 0:07] 3312 __assert_fail("i > 0 && i <= this->argsCount", "libacc.c", [ 0:07] 3313 131U, "__utac__get_this_argtype"); [ 0:07] 3314 } [ 0:07] 3315 } [ 0:07] 3316 } [ 0:07] 3317 } else { [ 0:07] 3318 { [ 0:07] 3319 __assert_fail("i > 0 && i <= this->argsCount", "libacc.c", [ 0:07] 3320 131U, "__utac__get_this_argtype"); [ 0:07] 3321 } [ 0:07] 3322 } [ 0:07] 3323 __cil_tmp7 = i - 1; [ 0:07] 3324 __cil_tmp8 = (unsigned long )this; [ 0:07] 3325 __cil_tmp9 = __cil_tmp8 + 24; [ 0:07] 3326 mem_13 = (char const ***)__cil_tmp9; [ 0:07] 3327 __cil_tmp10 = *mem_13; [ 0:07] 3328 __cil_tmp11 = __cil_tmp10 + __cil_tmp7; [ 0:07] 3329 retValue_acc = *__cil_tmp11; [ 0:07] 3330 return (retValue_acc); [ 0:07] 3331 return (retValue_acc); [ 0:07] 3332 } [ 0:07] 3333 } [ 0:07] # no errors were expected but one was found anyway