(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
s390/
TI-constants-nolra.c
       1  /* { dg-do compile { target int128 } } */
       2  /* { dg-options "-O3 -mno-lra" } */
       3  
       4  /* 2x lghi */
       5  __int128 a() {
       6    return 0;
       7  }
       8  
       9  /* 2x lghi */
      10  __int128 b() {
      11    return -1;
      12  }
      13  
      14  /* 2x lghi */
      15  __int128 c() {
      16    return -2;
      17  }
      18  
      19  /* lghi + llilh */
      20  __int128 d() {
      21    return 16000 << 16;
      22  }
      23  
      24  /* lghi + llihf */
      25  __int128 e() {
      26    return (unsigned long long)80000 << 32;
      27  }
      28  
      29  /* lghi + llihf */
      30  __int128 f() {
      31    return (unsigned __int128)80000 << 96;
      32  }
      33  
      34  /* llihf + llihf - this is handled via movti_bigconst pattern */
      35  __int128 g() {
      36    return ((unsigned __int128)80000 << 96) | ((unsigned __int128)80000 << 32);
      37  }
      38  
      39  /* Literal pool */
      40  __int128 h() {
      41    return ((unsigned __int128)80000 << 32) | 1;
      42  }
      43  
      44  /* Literal pool */
      45  __int128 i() {
      46    return (((unsigned __int128)80000 << 32) | 1) << 64;
      47  }