llvm/llvm/test/CodeGen/AArch64/sme2-intrinsics-zt0.ll

; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
; RUN: llc -mtriple=aarch64-linux-gnu -mattr=+sme2 -verify-machineinstrs < %s | FileCheck %s
; RUN: llc -mtriple=aarch64-linux-gnu -mattr=+sme2 -force-streaming -verify-machineinstrs < %s | FileCheck %s

; LDR

define void @ldr_zt0(ptr %ptr) {
; CHECK-LABEL: ldr_zt0:
; CHECK:       // %bb.0:
; CHECK-NEXT:    ldr zt0, [x0]
; CHECK-NEXT:    ret
  call void @llvm.aarch64.sme.ldr.zt(i32 0, ptr %ptr)
  ret void;
}

; STR

define void @str_zt0(ptr %ptr) {
; CHECK-LABEL: str_zt0:
; CHECK:       // %bb.0:
; CHECK-NEXT:    str zt0, [x0]
; CHECK-NEXT:    ret
  call void @llvm.aarch64.sme.str.zt(i32 0, ptr %ptr)
  ret void;
}

declare void @llvm.aarch64.sme.ldr.zt(i32, ptr)
declare void @llvm.aarch64.sme.str.zt(i32, ptr)