1  /* Ensure split constants can use replicated patterns.  */
       2  /* { dg-options "-mthumb -O2" } */
       3  /* { dg-require-effective-target arm_thumb2_ok } */
       4  
       5  int
       6  foo1 (int a)
       7  {
       8    return a + 0xfe00fe01;
       9  }
      10  
      11  /* { dg-final { scan-assembler "add.*#-33489408" } } */
      12  /* { dg-final { scan-assembler "add.*#1" } } */
      13  
      14  int
      15  foo2 (int a)
      16  {
      17    return a + 0xdd01dd00;
      18  }
      19  
      20  /* { dg-final { scan-assembler "add.*#-587145984" } } */
      21  /* { dg-final { scan-assembler "add.*#65536" } } */
      22  
      23  int
      24  foo3 (int a)
      25  {
      26    return a + 0x00443344;
      27  }
      28  
      29  /* { dg-final { scan-assembler "add.*#4456516" } } */
      30  /* { dg-final { scan-assembler "add.*#13056" } } */
      31  
      32  int
      33  foo4 (int a)
      34  {
      35    return a + 0x77330033;
      36  }
      37  
      38  /* { dg-final { scan-assembler "add.*#1996488704" } } */
      39  /* { dg-final { scan-assembler "add.*#3342387" } } */
      40  
      41  int
      42  foo5 (int a)
      43  {
      44    return a + 0x11221122;
      45  }
      46  
      47  /* { dg-final { scan-assembler "add.*#285217024" } } */
      48  /* { dg-final { scan-assembler "add.*#2228258" } } */
      49  
      50  int
      51  foo6 (int a)
      52  {
      53    return a + 0x66666677;
      54  }
      55  
      56  /* { dg-final { scan-assembler "add.*#1717986918" } } */
      57  /* { dg-final { scan-assembler "add.*#17" } } */
      58  
      59  int
      60  foo7 (int a)
      61  {
      62    return a + 0x99888888;
      63  }
      64  
      65  /* { dg-final { scan-assembler "add.*#-2004318072" } } */
      66  /* { dg-final { scan-assembler "add.*#285212672" } } */
      67  
      68  int
      69  foo8 (int a)
      70  {
      71    return a + 0xdddddfff;
      72  }
      73  
      74  /* { dg-final { scan-assembler "add.*#-572662307" } } */
      75  /* { dg-final { scan-assembler "addw.*#546" } } */