test_store_ccp(int i)1test_store_ccp (int i) 2 { 3 int *p, a, b, c; 4 5 if (i < 5) 6 p = &a; 7 else if (i > 8) 8 p = &b; 9 else 10 p = &c; 11 12 *p = 10; 13 b = 3; 14 15 /* STORE-CCP was wrongfully propagating 10 into *p. */ 16 return *p + 2; 17 } 18 19 test_store_copy_prop(int i)20test_store_copy_prop (int i) 21 { 22 int *p, a, b, c; 23 24 if (i < 5) 25 p = &a; 26 else if (i > 8) 27 p = &b; 28 else 29 p = &c; 30 31 *p = i; 32 b = i + 1; 33 34 /* STORE-COPY-PROP was wrongfully propagating i into *p. */ 35 return *p; 36 } 37 38 main()39main() 40 { 41 int x; 42 43 x = test_store_ccp (10); 44 if (x == 12) 45 abort (); 46 47 x = test_store_copy_prop (9); 48 if (x == 9) 49 abort (); 50 51 return 0; 52 } 53