File: if2.res.oracle

package info (click to toggle)
frama-c 20161101%2Bsilicon%2Bdfsg-5
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 42,324 kB
  • ctags: 35,695
  • sloc: ml: 200,142; ansic: 31,465; makefile: 2,334; sh: 1,643; lisp: 259; python: 85; asm: 26
file content (75 lines) | stat: -rw-r--r-- 1,742 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
[kernel] Parsing share/libc/__fc_builtin_for_normalization.i (no preprocessing)
[kernel] Parsing tests/value/if2.i (no preprocessing)
[value] Analyzing a complete application starting at main
[value] Computing initial state
[value] Initial state computed
[value:initial-state] Values of globals at initialization
  G2 ∈ {0}
  G3 ∈ {75}
  G4 ∈ {0}
  R ∈ {0}
  v ∈ [--..--]
  G1 ∈ {0}
[value] Recording results for main
[value] done for function main
[value] ====== VALUES COMPUTED ======
[value:final-states] Values at end of function main:
  G3 ∈ {0}
  R ∈ {4; 10; 11}
  b ∈ {1}
[from] Computing for function main
[from] Done for function main
[from] ====== DEPENDENCIES COMPUTED ======
       These dependencies hold at termination for the executions that terminate:
[from] Function main:
  G3 FROM G4
  R FROM R; v
[from] ====== END OF DEPENDENCIES ======
[inout] Out (internal) for function main:
          G3; R; b
[inout] Inputs for function main:
          G4; R; v; G1
/* Generated by Frama-C */
enum __anonenum_T1_t_1 {
    E1 = 0,
    E2 = 0x0001,
    E3 = 0x0002,
    E4 = 0x0004,
    E5 = 0x0008,
    E6 = 0x0010,
    E7 = 0x0020
};
typedef enum __anonenum_T1_t_1 T1_t;
enum Bool {
    FALSE = 0,
    TRUE = 2
};
static T1_t G1;
T1_t G2 = E1;
int G3 = 75;
int G4;
int R;
int volatile v;
void main(void)
{
  enum Bool b;
  if ((unsigned int)E6 == G1) G2 = G1;
  if (0 == G4) G3 = G4;
  if (v) 
    if (E1) R = 5; else R = 6;
  if (v) 
    if (! E1) R = 6; else R = 5;
  if (v) 
    if (E5) R = 7; else R = 5;
  if (v) 
    if (! E5) R = 5; else R = 7;
  b = FALSE;
  if (! b) R += ! b;
  b = TRUE;
  if (b) R = (int)((unsigned int)R + b);
  b = (enum Bool)1;
  if (b) R = (int)((unsigned int)R + b);
  return;
}