1  /* { dg-do assemble } */
       2  /* { dg-options "-O" } */
       3  
       4  void test_ldbio (unsigned char* p1, unsigned char* p2)
       5  {
       6    __builtin_ldbio (p1);
       7    __builtin_ldbio (p2);
       8    __builtin_ldbio (p2 + 1);
       9    __builtin_ldbio (p2 + 2);
      10    __builtin_ldbio (p2 + 2047);
      11    __builtin_ldbio (p2 + 2048);
      12  }
      13  
      14  void test_ldbuio (unsigned char* p1, unsigned char* p2)
      15  {
      16    __builtin_ldbuio (p1);
      17    __builtin_ldbuio (p2);
      18    __builtin_ldbuio (p2 + 1);
      19    __builtin_ldbuio (p2 + 2);
      20    __builtin_ldbuio (p2 + 2047);
      21    __builtin_ldbuio (p2 + 2048);
      22  }
      23  
      24  void test_ldhio (unsigned short* p1, unsigned short* p2)
      25  {
      26    __builtin_ldhio (p1);
      27    __builtin_ldhio (p2);
      28    __builtin_ldhio (p2 + 1);
      29    __builtin_ldhio (p2 + 2);
      30    __builtin_ldhio (p2 + 1023);
      31    __builtin_ldhio (p2 + 1024);
      32  }
      33  
      34  void test_ldhuio (unsigned short* p1, unsigned short* p2)
      35  {
      36    __builtin_ldhuio (p1);
      37    __builtin_ldhuio (p2);
      38    __builtin_ldhuio (p2 + 1);
      39    __builtin_ldhuio (p2 + 2);
      40    __builtin_ldhuio (p2 + 1023);
      41    __builtin_ldhuio (p2 + 1024);
      42  }
      43  
      44  void test_ldwio (unsigned int* p1, unsigned int* p2)
      45  {
      46    __builtin_ldwio (p1);
      47    __builtin_ldwio (p2);
      48    __builtin_ldwio (p2 + 1);
      49    __builtin_ldwio (p2 + 2);
      50    __builtin_ldwio (p2 + 511);
      51    __builtin_ldwio (p2 + 512);
      52  }