1// RUN: %exploded_graph_rewriter %s \
2// RUN:     | FileCheck %s -check-prefixes=ONE,TWO,THREE,FOUR
3// RUN: %exploded_graph_rewriter -s %s \
4// RUN:     | FileCheck %s -check-prefixes=ONE,TWO,NOTTHREE,FOUR
5// RUN: %exploded_graph_rewriter --to=0x2 %s \
6// RUN:     | FileCheck %s -check-prefixes=ONE,TWO,NOTTHREE,NOTFOUR
7// RUN: %exploded_graph_rewriter --to 2 %s \
8// RUN:     | FileCheck %s -check-prefixes=ONE,TWO,NOTTHREE,NOTFOUR
9// RUN: %exploded_graph_rewriter --to 2,3 %s \
10// RUN:     | FileCheck %s -check-prefixes=ONE,TWO,THREE,NOTFOUR
11// RUN: %exploded_graph_rewriter --to 4 %s \
12// RUN:     | FileCheck %s -check-prefixes=ONE,TWO,THREE,FOUR
13// RUN: %exploded_graph_rewriter --to 4 -s %s \
14// RUN:     | FileCheck %s -check-prefixes=ONE,TWO,NOTTHREE,FOUR
15
16Node0x1 [shape=record,label=
17 "{{ "state_id": 0, "program_state": null, "program_points": [
18       {
19         "kind": "BlockEntrance", "block_id": 1,
20         "terminator": null, "term_kind": null,
21         "tag": null, "node_id": 1,
22         "has_report": 0, "is_sink": 0
23       }
24     ]}\l}"];
25
26Node0x2 [shape=record,label=
27 "{{ "state_id": 0, "program_state": null, "program_points": [
28       {
29         "kind": "BlockEntrance", "block_id": 1,
30         "terminator": null, "term_kind": null,
31         "tag": null, "node_id": 2,
32         "has_report": 0, "is_sink": 0
33       }
34     ]}\l}"];
35
36Node0x3 [shape=record,label=
37 "{{ "state_id": 0, "program_state": null, "program_points": [
38       {
39         "kind": "BlockEntrance", "block_id": 1,
40         "terminator": null, "term_kind": null,
41         "tag": null, "node_id": 3,
42         "has_report": 0, "is_sink": 0
43       }
44     ]}\l}"];
45
46Node0x4 [shape=record,label=
47 "{{ "state_id": 0, "program_state": null, "program_points": [
48       {
49         "kind": "BlockEntrance", "block_id": 1,
50         "terminator": null, "term_kind": null,
51         "tag": null, "node_id": 4,
52         "has_report": 0, "is_sink": 0
53       }
54     ]}\l}"];
55
56Node0x1 -> Node0x2;
57Node0x1 -> Node0x3;
58Node0x2 -> Node0x4;
59Node0x3 -> Node0x4;
60
61// ONE: Node0x1
62// NOTONE-NOT: Node0x1
63// TWO: Node0x2
64// NOTTWO-NOT: Node0x2
65// THREE: Node0x3
66// NOTTHREE-NOT: Node0x3
67// FOUR: Node0x4
68// NOTFOUR-NOT: Node0x4
69