about summary refs log tree commit diff
path: root/tests/codegen-llvm/intrinsics/mask.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/codegen-llvm/intrinsics/mask.rs')
-rw-r--r--tests/codegen-llvm/intrinsics/mask.rs12
1 files changed, 12 insertions, 0 deletions
diff --git a/tests/codegen-llvm/intrinsics/mask.rs b/tests/codegen-llvm/intrinsics/mask.rs
new file mode 100644
index 00000000000..5344274678c
--- /dev/null
+++ b/tests/codegen-llvm/intrinsics/mask.rs
@@ -0,0 +1,12 @@
+//@ compile-flags: -Copt-level=0
+#![crate_type = "lib"]
+#![feature(core_intrinsics)]
+
+// CHECK-LABEL: @mask_ptr
+// CHECK-SAME: [[WORD:i[0-9]+]] %mask
+#[no_mangle]
+pub fn mask_ptr(ptr: *const u16, mask: usize) -> *const u16 {
+    // CHECK: call
+    // CHECK-SAME: @llvm.ptrmask.{{p0|p0i8}}.[[WORD]](ptr {{%ptr|%1}}, [[WORD]] %mask)
+    core::intrinsics::ptr_mask(ptr, mask)
+}