1/* PR 15184 second two tests 2/* { dg-do compile { target ia32 } } */ 3/* { dg-options "-O2 -march=pentiumpro" } */ 4 5#define regparm __attribute__((__regparm__(1))) 6 7extern unsigned short y; 8 9void regparm g0(unsigned char c) 10{ 11 y = (y & 0xFF00) | (unsigned short)c; 12} 13 14void regparm g1(unsigned char c) 15{ 16 y = (y & 0x00FF) | ((unsigned short)c << 8); 17} 18 19/* Each function should compile down to a byte move from 20 the input register into y, possibly at an offset within y. */ 21/* { dg-final { scan-assembler-times "movb\[ \\t\]+%al" 2 } } */ 22 23