コード例 #1
0
ファイル: arm64_vadd.c プロジェクト: 4ntoine/clang
int16_t test_vaddvq_s16(int16x8_t a1) {
  // CHECK: test_vaddvq_s16
  return vaddvq_s16(a1);
  // CHECK: llvm.aarch64.neon.saddv.i32.v8i16
  // don't check for return here (there's a trunc?)
}
コード例 #2
0
// CHECK-LABEL: define i16 @test_vaddvq_s16(<8 x i16> %a) #0 {
// CHECK:   [[VADDV_I:%.*]] = call i32 @llvm.aarch64.neon.saddv.i32.v8i16(<8 x i16> %a) #2
// CHECK:   [[TMP2:%.*]] = trunc i32 [[VADDV_I]] to i16
// CHECK:   ret i16 [[TMP2]]
int16_t test_vaddvq_s16(int16x8_t a) {
  return vaddvq_s16(a);
}
コード例 #3
0
ファイル: aarch64-neon-across.c プロジェクト: 4ntoine/clang
int16_t test_vaddvq_s16(int16x8_t a) {
  // CHECK-LABEL: test_vaddvq_s16
  return vaddvq_s16(a);
  // CHECK: addv {{h[0-9]+}}, {{v[0-9]+}}.8h
}