about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorAndy Sadler <andrewsadler122@gmail.com>2022-10-02 18:29:51 -0500
committerAndy Sadler <andrewsadler122@gmail.com>2022-10-02 19:04:49 -0500
commit436710fa9bf5ea9a601705c2bd276e18751f2c24 (patch)
tree92433a9aace8b0737a17b353a6728fc6b7ab1e31 /src
parent86a3e3bd03a3be2cbd44094878d6ea7528ba5c9c (diff)
downloadrust-436710fa9bf5ea9a601705c2bd276e18751f2c24.tar.gz
rust-436710fa9bf5ea9a601705c2bd276e18751f2c24.zip
simd: enable simd_as intrinsic
The method context.convert_vector, added to libgccjit for simd_cast,
appears to give the correct behavior for simd_as.  Instead of
special-casing simd_as, re-use simd_cast's impl for simd_as.

Signed-off-by: Andy Sadler <andrewsadler122@gmail.com>
Diffstat (limited to 'src')
-rw-r--r--src/intrinsic/simd.rs2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/intrinsic/simd.rs b/src/intrinsic/simd.rs
index 6d600997283..00c541a8af7 100644
--- a/src/intrinsic/simd.rs
+++ b/src/intrinsic/simd.rs
@@ -254,7 +254,7 @@ pub fn generic_simd_intrinsic<'a, 'gcc, 'tcx>(bx: &mut Builder<'a, 'gcc, 'tcx>,
     }
 
     #[cfg(feature="master")]
-    if name == sym::simd_cast {
+    if name == sym::simd_cast || name == sym::simd_as {
         require_simd!(ret_ty, "return");
         let (out_len, out_elem) = ret_ty.simd_size_and_type(bx.tcx());
         require!(