1*20f56e1fSVitaly Buka; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py 2*20f56e1fSVitaly Buka; RUN: llc < %s -mtriple=riscv32 -global-isel=0 -fast-isel=0 | FileCheck %s 3*20f56e1fSVitaly Buka; RUN: llc < %s -mtriple=riscv32 -global-isel=1 -fast-isel=0 | FileCheck %s 4*20f56e1fSVitaly Buka; RUN: llc < %s -mtriple=riscv32 -global-isel=0 -fast-isel=1 | FileCheck %s 5*20f56e1fSVitaly Buka 6*20f56e1fSVitaly Buka; RUN: llc < %s -mtriple=riscv64 -global-isel=0 -fast-isel=0 | FileCheck %s 7*20f56e1fSVitaly Buka; RUN: llc < %s -mtriple=riscv64 -global-isel=1 -fast-isel=0 | FileCheck %s 8*20f56e1fSVitaly Buka; RUN: llc < %s -mtriple=riscv64 -global-isel=0 -fast-isel=1 | FileCheck %s 9*20f56e1fSVitaly Buka 10*20f56e1fSVitaly Bukadefine i1 @test_runtime() local_unnamed_addr { 11*20f56e1fSVitaly Buka; CHECK-LABEL: test_runtime: 12*20f56e1fSVitaly Buka; CHECK: # %bb.0: # %entry 13*20f56e1fSVitaly Buka; CHECK-NEXT: li a0, 1 14*20f56e1fSVitaly Buka; CHECK-NEXT: ret 15*20f56e1fSVitaly Bukaentry: 16*20f56e1fSVitaly Buka %allow = call i1 @llvm.allow.runtime.check(metadata !"test_check") 17*20f56e1fSVitaly Buka ret i1 %allow 18*20f56e1fSVitaly Buka} 19*20f56e1fSVitaly Buka 20*20f56e1fSVitaly Bukadeclare i1 @llvm.allow.runtime.check(metadata) nounwind 21*20f56e1fSVitaly Buka 22*20f56e1fSVitaly Bukadefine i1 @test_ubsan() local_unnamed_addr { 23*20f56e1fSVitaly Buka; CHECK-LABEL: test_ubsan: 24*20f56e1fSVitaly Buka; CHECK: # %bb.0: # %entry 25*20f56e1fSVitaly Buka; CHECK-NEXT: li a0, 1 26*20f56e1fSVitaly Buka; CHECK-NEXT: ret 27*20f56e1fSVitaly Bukaentry: 28*20f56e1fSVitaly Buka %allow = call i1 @llvm.allow.ubsan.check(i8 7) 29*20f56e1fSVitaly Buka ret i1 %allow 30*20f56e1fSVitaly Buka} 31*20f56e1fSVitaly Buka 32*20f56e1fSVitaly Bukadeclare i1 @llvm.allow.ubsan.check(i8) nounwind 33