xref: /llvm-project/llvm/test/CodeGen/X86/prefetchi.ll (revision 022aefa59c28323d961603abaa34caaffe273ee4)
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2; RUN: llc < %s -mtriple=x86_64-- -mattr=+prefetchi | FileCheck %s
3; RUN: llc < %s -mtriple=x86_64-- | FileCheck %s --check-prefix=NOPREFETCHI
4
5define dso_local void @t(ptr %ptr) nounwind  {
6; CHECK-LABEL: t:
7; CHECK:       # %bb.0: # %entry
8; CHECK-NEXT:    prefetchit1 (%rdi)
9; CHECK-NEXT:    prefetchit0 (%rdi)
10; CHECK-NEXT:    prefetchit1 t(%rip)
11; CHECK-NEXT:    prefetchit0 ext(%rip)
12; CHECK-NEXT:    retq
13;
14; NOPREFETCHI-LABEL: t:
15; NOPREFETCHI:       # %bb.0: # %entry
16; NOPREFETCHI-NEXT:    retq
17entry:
18  tail call void @llvm.prefetch(ptr %ptr, i32 0, i32 2, i32 0)
19  tail call void @llvm.prefetch(ptr %ptr, i32 0, i32 3, i32 0)
20  tail call void @llvm.prefetch(ptr @t,   i32 0, i32 2, i32 0)
21  tail call void @llvm.prefetch(ptr @ext, i32 0, i32 3, i32 0)
22  ret void
23}
24
25declare dso_local void @ext() nounwind
26declare void @llvm.prefetch(ptr, i32, i32, i32) nounwind
27