Exemple #1
0
void test_vget_highp16 (void)
{
    poly16x4_t out_poly16x4_t;
    poly16x8_t arg0_poly16x8_t;

    out_poly16x4_t = vget_high_p16 (arg0_poly16x8_t);
}
poly16x4_t test_vget_high_p16(poly16x8_t a) {
  // CHECK-LABEL: test_vget_high_p16
  return vget_high_p16(a);
  // CHECK: dup d0, {{v[0-9]+}}.d[1]
}
poly16x4_t test_vget_high_p16(poly16x8_t a) {
  // CHECK-COMMON-LABEL: test_vget_high_p16
  return vget_high_p16(a);
  // CHECK-AARCH64: dup d0, {{v[0-9]+}}.d[1]
  // CHECK-ARM64: ext v0.16b, v0.16b, v0.16b, #8
}
// CHECK-LABEL: define <4 x i16> @test_vget_high_p16(<8 x i16> %a) #0 {
// CHECK:   [[SHUFFLE_I:%.*]] = shufflevector <8 x i16> %a, <8 x i16> %a, <4 x i32> <i32 4, i32 5, i32 6, i32 7>
// CHECK:   ret <4 x i16> [[SHUFFLE_I]]
poly16x4_t test_vget_high_p16(poly16x8_t a) {
  return vget_high_p16(a);
}