1ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown
2ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown#include <stdio.h>
3ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown#include <stdlib.h>
4ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown
5ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown#include "../memcheck.h"
6ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown
7ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brownint main1 ( void )
8ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown{
9ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown  int xxx, i;
10ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown  for (i = 0; i < 10; i++) VALGRIND_CHECK_VALUE_IS_DEFINED(xxx);
11ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown  return 0;
12ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown}
13ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown
14ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brownint main ( void )
15ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown{
16ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown   int i, sum, m;
17ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown   char* aa = calloc(100,1);
18ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown   sum = 0;
19ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown
20ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown   VALGRIND_CHECK_MEM_IS_DEFINED(aa,100);
21ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown
22ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown   m = VALGRIND_MAKE_MEM_UNDEFINED( &aa[49], 1 );
23ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown   VALGRIND_CHECK_MEM_IS_ADDRESSABLE(aa,100);
24ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown
25ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown   printf("m_na: returned value is %d\n", m );
26ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown
27ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown   for (i = 0; i < 100; i++)
28ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown     sum += aa[i];
29ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown   printf("sum is %s\n", sum > 0 ? "positive" : "non-positive");
30ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown
31ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown   m = VALGRIND_DISCARD(m);
32ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown   printf("m_rm: returned value is %d\n", m );
33ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown
34ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown   for (i = 0; i < 100; i++)
35ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown     sum += aa[i];
36ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown   printf("sum is %s\n", sum > 0 ? "positive" : "non-positive");
37ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown
38ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown   return 0;
39ed07e00d438c74b7a23c01bfffde77e3968305e4Jeff Brown}
40