1/* { dg-do compile } */ 2 3typedef unsigned char uint8_t; 4typedef unsigned short uint16_t; 5 6void 7rgb15to24_C (const uint8_t * src, uint8_t * dst, long src_size) 8{ 9 const uint16_t *end; 10 const uint16_t *s = (uint16_t *)src; 11 uint8_t *d = (uint8_t *)dst; 12 13 end = s + src_size/2; 14 while (s < end) 15 { 16 uint16_t bgr = *s++; 17 18 *d++ = (bgr&0x1F)<<3; 19 *d++ = (bgr&0x3E0)>>2; 20 *d++ = (bgr&0x7C00)>>7; 21 } 22} 23 24/* { dg-final { cleanup-tree-dump "vect" } } */ 25