1; RUN: llc %s -verify-machineinstrs -o - | FileCheck %s 2 3target triple = "aarch64" 4 5define i64 @test_tstart() #0 { 6 %r = tail call i64 @llvm.aarch64.tstart() 7 ret i64 %r 8} 9declare i64 @llvm.aarch64.tstart() #1 10; CHECK-LABEL: test_tstart 11; CHECK: tstart x 12 13define i64 @test_ttest() #0 { 14 %r = tail call i64 @llvm.aarch64.ttest() 15 ret i64 %r 16} 17declare i64 @llvm.aarch64.ttest() #1 18; CHECK-LABEL: test_ttest 19; CHECK: ttest x 20 21define void @test_tcommit() #0 { 22 tail call void @llvm.aarch64.tcommit() 23 ret void 24} 25declare void @llvm.aarch64.tcommit() #1 26; CHECK-LABEL: test_tcommit 27; CHECK: tcommit 28 29define 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 35} 36declare 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 42 43attributes #0 = { "target-features"="+tme" } 44attributes #1 = { nounwind } 45