source: CIVL/examples/mem/readset/array.cvl@ 7d77e64

main test-branch
Last change on this file since 7d77e64 was ea777aa, checked in by Alex Wilton <awilton@…>, 3 years ago

Moved examples, include, build_default.properties, common.xml, and README out from dev.civl.com into the root of the repo.

git-svn-id: svn://vsl.cis.udel.edu/civl/trunk@5704 fb995dde-84ed-4084-dfe6-e5aef3e2452c

  • Property mode set to 100644
File size: 516 bytes
Line 
1#include<mem.cvh>
2
3int main() {
4 int x,y,z;
5 int a[10] = {0}, b[10][10] = {0}, c[10][10][10] = {0};
6
7 x = 0, y = 0, z = 0;
8 $read_set_push();
9 x = a[0];
10 y = b[0][0];
11 z = c[x][y][a[1]];
12 $mem m = $read_set_pop();
13 $mem oracle = ($mem)&x;
14
15 oracle = $mem_union(oracle, ($mem)&y);
16 oracle = $mem_union(oracle, ($mem)&a[0]);
17 oracle = $mem_union(oracle, ($mem)&a[1]);
18 oracle = $mem_union(oracle, ($mem)&b[0][0]);
19 oracle = $mem_union(oracle, ($mem)&c[x][y][a[1]]);
20 $assert($mem_equals(m, oracle));
21}
22
Note: See TracBrowser for help on using the repository browser.