1 /* 2 pr81556.c from the execute part of the gcc torture tests. 3 */ 4 5 #include <testfwk.h> 6 7 #ifdef __SDCC 8 #pragma std_c99 9 #endif 10 11 #if !defined(__SDCC_pdk14) // Lack of memory 12 /* PR tree-optimization/81556 */ 13 unsigned long long int b = 0xb82ff73c5c020599ULL; 14 unsigned long long int c = 0xd4e8188733a29d8eULL; 15 unsigned long long int d = 2, f = 1, g = 0, h = 0; 16 unsigned long long int e = 0xf27771784749f32bULL; 17 18 void foo(void)19foo (void) 20 { 21 _Bool a = d > 1; 22 g = f % ((d > 1) << 9); 23 h = a & (e & (a & b & c)); 24 } 25 #endif 26 27 void testTortureExecute(void)28testTortureExecute (void) 29 { 30 #if !defined(__SDCC_pdk14) // Lack of memory 31 foo (); 32 if (g != 1 || h != 0) 33 ASSERT (0); 34 return; 35 #endif 36 } 37