Bump version to 19.1.0-rc3
[llvm-project.git] / llvm / test / CodeGen / AArch64 / tme.ll
blobd78e8a4de6b597ecea42873aef224c953139d50e
1 ; RUN: llc %s -verify-machineinstrs -o - | FileCheck %s
3 target triple = "aarch64"
5 define i64 @test_tstart() #0 {
6   %r = tail call i64 @llvm.aarch64.tstart()
7   ret i64 %r
9 declare i64 @llvm.aarch64.tstart() #1
10 ; CHECK-LABEL: test_tstart
11 ; CHECK: tstart x
13 define i64 @test_ttest() #0 {
14   %r = tail call i64 @llvm.aarch64.ttest()
15   ret i64 %r
17 declare i64 @llvm.aarch64.ttest() #1
18 ; CHECK-LABEL: test_ttest
19 ; CHECK: ttest x
21 define void @test_tcommit() #0 {
22   tail call void @llvm.aarch64.tcommit()
23   ret void
25 declare void @llvm.aarch64.tcommit() #1
26 ; CHECK-LABEL: test_tcommit
27 ; CHECK: tcommit
29 define void @test_tcancel() #0 {
30   tail call void @llvm.aarch64.tcancel(i64 0) #1
31   tail call void @llvm.aarch64.tcancel(i64 1) #1
32   tail call void @llvm.aarch64.tcancel(i64 65534) #1
33   tail call void @llvm.aarch64.tcancel(i64 65535) #1
34   ret void
36 declare void @llvm.aarch64.tcancel(i64 immarg) #1
37 ; CHECK-LABEL: test_tcancel
38 ; CHECK: tcancel #0
39 ; CHECK: tcancel #0x1
40 ; CHECK: tcancel #0xfffe
41 ; CHECK: tcancel #0xffff
43 attributes #0 = { "target-features"="+tme" }
44 attributes #1 = { nounwind }