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