================
@@ -0,0 +1,29 @@
+; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
UTC_ARGS: --version 6
+; RUN: llc -mtriple=aarch64 -mattr=+v8.9a --global-isel=0 < %s | FileCheck %s
+; RUN: llc -mtriple=aarch64 -mattr=+v8.9a --global-isel=1
--global-isel-abort=1 < %s | FileCheck %s
+
+define void @range_prefetch_metadata_accesses(ptr %a, i64 %metadata) {
+; CHECK-LABEL: range_prefetch_metadata_accesses:
+; CHECK: // %bb.0:
+; CHECK-NEXT: rprfm pldkeep, x1, [x0]
+; CHECK-NEXT: rprfm pstkeep, x1, [x0]
+; CHECK-NEXT: rprfm pldstrm, x1, [x0]
+; CHECK-NEXT: rprfm pststrm, x1, [x0]
+; CHECK-NEXT: ret
+ call void @llvm.aarch64.range.prefetch(ptr %a, i32 0, i32 0, i64 %metadata)
+ call void @llvm.aarch64.range.prefetch(ptr %a, i32 1, i32 0, i64 %metadata)
+ call void @llvm.aarch64.range.prefetch(ptr %a, i32 0, i32 1, i64 %metadata)
+ call void @llvm.aarch64.range.prefetch(ptr %a, i32 1, i32 1, i64 %metadata)
+ ret void
+}
+
+define void @range_prefetch_metadata_const(ptr %a) {
+; CHECK-LABEL: range_prefetch_metadata_const:
+; CHECK: // %bb.0:
+; CHECK-NEXT: mov x8, #2097152 // =0x200000
+; CHECK-NEXT: movk x8, #2048, lsl #48
+; CHECK-NEXT: rprfm pldkeep, x8, [x0]
+; CHECK-NEXT: ret
+ call void @llvm.aarch64.range.prefetch(ptr %a, i32 0, i32 0, i64
576460752305520640)
+ ret void
+}
----------------
paulwalker-arm wrote:
Does this test anything that's not already covered by
`range_prefetch_metadata_accesses`?
https://github.com/llvm/llvm-project/pull/170490
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits