1  /* { dg-do compile } */
       2  /* { dg-require-effective-target arm_v8_2a_bf16_neon_ok } */
       3  /* { dg-add-options arm_v8_2a_bf16_neon } */
       4  
       5  #include "arm_neon.h"
       6  
       7  float32x2_t
       8  test_vbfdot_lane_f32_a (float32x2_t r, bfloat16x4_t a, bfloat16x4_t b)
       9  {
      10    /* { dg-error "lane -1 out of range 0 - 1" "" {target *-*-*} 0 } */
      11    return vbfdot_lane_f32 (r, a, b, -1);
      12  }
      13  
      14  float32x2_t
      15  test_vbfdot_lane_f32_b (float32x2_t r, bfloat16x4_t a, bfloat16x4_t b)
      16  {
      17    /* { dg-error "lane 2 out of range 0 - 1" "" {target *-*-*} 0 } */
      18    return vbfdot_lane_f32 (r, a, b, 2);
      19  }
      20  
      21  float32x2_t
      22  test_vbfdot_laneq_f32_a (float32x2_t r, bfloat16x4_t a, bfloat16x8_t b)
      23  {
      24    /* { dg-error "lane -1 out of range 0 - 3" "" { target *-*-* } 0 } */
      25    return vbfdot_laneq_f32 (r, a, b, -1);
      26  }
      27  
      28  float32x2_t
      29  test_vbfdot_laneq_f32_b (float32x2_t r, bfloat16x4_t a, bfloat16x8_t b)
      30  {
      31    /* { dg-error "lane 4 out of range 0 - 3" "" { target *-*-* } 0 } */
      32    return vbfdot_laneq_f32 (r, a, b, 4);
      33  }