diff options
| author | Chad Rosier <mcrosier@codeaurora.org> | 2013-11-11 18:04:22 +0000 |
|---|---|---|
| committer | Chad Rosier <mcrosier@codeaurora.org> | 2013-11-11 18:04:22 +0000 |
| commit | 249c714bb4cd00f859d5ca7e3c0d48a0d845965c (patch) | |
| tree | b7d4974f9e84a211f61b234663c7a26bc7be45dd /clang/lib/CodeGen | |
| parent | 35575e737ceb439838cab79791727c8586295cb5 (diff) | |
| download | bcm5719-llvm-249c714bb4cd00f859d5ca7e3c0d48a0d845965c.tar.gz bcm5719-llvm-249c714bb4cd00f859d5ca7e3c0d48a0d845965c.zip | |
[AArch64] Add support for NEON scalar floating-point convert to fixed-point instructions.
llvm-svn: 194395
Diffstat (limited to 'clang/lib/CodeGen')
| -rw-r--r-- | clang/lib/CodeGen/CGBuiltin.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CGBuiltin.cpp b/clang/lib/CodeGen/CGBuiltin.cpp index f892d12372e..5ced54360fa 100644 --- a/clang/lib/CodeGen/CGBuiltin.cpp +++ b/clang/lib/CodeGen/CGBuiltin.cpp @@ -2384,6 +2384,20 @@ static Value *EmitAArch64ScalarBuiltinExpr(CodeGenFunction &CGF, case AArch64::BI__builtin_neon_vcvtd_n_f64_u64: Int = Intrinsic::aarch64_neon_vcvtf64_n_u64; s = "vcvtf"; OverloadInt = false; break; + // Scalar Floating-point Convert To Signed Fixed-point (Immediate) + case AArch64::BI__builtin_neon_vcvts_n_s32_f32: + Int = Intrinsic::aarch64_neon_vcvts_n_s32_f32; + s = "fcvtzs"; OverloadInt = false; break; + case AArch64::BI__builtin_neon_vcvtd_n_s64_f64: + Int = Intrinsic::aarch64_neon_vcvtd_n_s64_f64; + s = "fcvtzs"; OverloadInt = false; break; + // Scalar Floating-point Convert To Unsigned Fixed-point (Immediate) + case AArch64::BI__builtin_neon_vcvts_n_u32_f32: + Int = Intrinsic::aarch64_neon_vcvts_n_u32_f32; + s = "fcvtzu"; OverloadInt = false; break; + case AArch64::BI__builtin_neon_vcvtd_n_u64_f64: + Int = Intrinsic::aarch64_neon_vcvtd_n_u64_f64; + s = "fcvtzu"; OverloadInt = false; break; } if (!Int) |

