1  /* { dg-do compile } */
       2  /* { dg-options "-O2 -fdump-tree-bswap-details" } */
       3  
       4  int foo(unsigned char *ptr)
       5  {
       6  #if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
       7      return ptr[0] + (ptr[1] << 8);
       8  #else
       9      return ptr[1] + (ptr[0] << 8);
      10  #endif
      11  }
      12  
      13  /* { dg-final { scan-tree-dump "16 bit load in target endianness found" "bswap" } } */
      14