(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
i386/
pr109137.c
       1  /* PR target/109137 */
       2  /* { dg-do compile { target ia32 } } */
       3  /* { dg-options "-O3 -march=znver1 -mfpmath=sse -w" } */
       4  /* { dg-additional-options "-fPIC" { target fpic } } */
       5  
       6  typedef struct {
       7    char bytestream_end;
       8  } CABACContext;
       9  int get_cabac___trans_tmp_3, get_cabac_tmp, get_cabac_c,
      10      decode_cabac_mb_intra4x4_pred_mode_mode, ff_h264_decode_mb_cabac_h_0,
      11      ff_h264_decode_mb_cabac_bit;
      12  typedef struct {
      13    char intra4x4_pred_mode_cache[2];
      14  } H264SliceContext;
      15  H264SliceContext ff_h264_decode_mb_cabac_sl;
      16  void ff_h264_decode_mb_cabac(void) {
      17    __builtin_memset((void*)ff_h264_decode_mb_cabac_h_0, 6, 48);
      18    int i;
      19    for (;; i++) {
      20      __asm__(""/* { dg-error "'asm' operand has impossible constraints" } */
      21              : "=&r"(ff_h264_decode_mb_cabac_bit), "=&r"(get_cabac_c),
      22                "=&r"(get_cabac_c), "=&q"(get_cabac_tmp)
      23              : "r"(get_cabac___trans_tmp_3),
      24                "r"(__builtin_offsetof(CABACContext, bytestream_end))
      25              : "ecx");
      26      ff_h264_decode_mb_cabac_sl.intra4x4_pred_mode_cache[i] =
      27          decode_cabac_mb_intra4x4_pred_mode_mode;
      28    }
      29  }