1 /* PR rtl-optimization/44031 */ 2 /* Testcase by John Regehr <regehr@cs.utah.edu> */ 3 4 typedef unsigned char uint8_t; 5 typedef unsigned int uint32_t; 6 typedef unsigned long int uint64_t; 7 8 static uint32_t safe_add_func_uint32_t_u_u(uint32_t ui1,uint32_t ui2)9safe_add_func_uint32_t_u_u (uint32_t ui1, uint32_t ui2) 10 { 11 return ui1 + ui2; 12 } 13 14 static uint64_t safe_div_func_uint64_t_u_u(uint64_t ui1,uint32_t ui2)15safe_div_func_uint64_t_u_u (uint64_t ui1, uint32_t ui2) 16 { 17 return ui2 ? : (ui1 / ui2); 18 } 19 20 uint8_t g_55; 21 uint8_t *g_73 = &g_55; 22 uint8_t **g_332 = &g_73; 23 24 int func_38(uint8_t *,int); 25 int func_8(int); 26 int321(void)27int int321 (void) 28 { 29 uint8_t l_26[4]; 30 uint8_t *l_238 = &l_26[2]; 31 uint8_t l_400; 32 l_400 &= 33 func_38 (&l_26[3], 34 safe_add_func_uint32_t_u_u (safe_div_func_uint64_t_u_u 35 (1, **g_332), 36 *l_238) >= *l_238 < func_8 (0)), 1; 37 return 0; 38 } 39