1 /* { dg-do compile } */ 2 /* { dg-options "-mtune=generic -O2" } */ 3 4 typedef unsigned char uint8_t; 5 typedef unsigned int uint32_t; 6 cvt_to_2digit(uint8_t i,uint8_t base)7unsigned cvt_to_2digit(uint8_t i, uint8_t base) 8 { 9 return ((i / base) | (uint32_t)(i % base)<<8); 10 } cvt_to_2digit_ascii(uint8_t i)11unsigned cvt_to_2digit_ascii(uint8_t i) 12 { 13 return cvt_to_2digit(i, 10) + 0x0a3030; 14 } 15 /* { dg-final { scan-assembler-times "lea.\t\\(%\[0-9a-z\]+,%\[0-9a-z\]+,4" 3 } } */ 16 /* { dg-final { scan-assembler-times "lea.\t\\(%\[0-9a-z\]+,%\[0-9a-z\]+,8" 1 } } */ 17