1 /* PR rtl-optimization/17825 */ 2 #ifdef __i386__ 3 register unsigned int reg __asm ("esi"); 4 #elif defined __x86_64__ 5 register unsigned int reg __asm ("r14"); 6 #else 7 unsigned int reg; 8 #endif 9 10 struct S 11 { 12 unsigned int h[8]; 13 } *b; 14 unsigned int c; 15 void foo (int); 16 17 void bar(void)18bar (void) 19 { 20 unsigned int j, k, l, m; 21 22 j = (reg & 0xffff) | ((b->h[2] & 0xffff) << 16); 23 k = c & 0xffff; 24 if (k == 0) 25 foo (0); 26 l = (j / k) & 0xffff; 27 m = (j % k) & 0xffff; 28 reg = (reg & 0xffff0000) | l; 29 b->h[2] = (b->h[2] & 0xffff0000) | m; 30 } 31