brintos

brintos / llvm-project-archived public Read only

0
0
Text · 843 B · 6561bac Raw
26 lines · plain
1; RUN: llc -mtriple thumbv6m-eabi      %s -o - | FileCheck %s2; RUN: llc -mtriple thumbv8m.base-eabi %s -o - | FileCheck %s3; RUN: llc -mtriple thumbv7a-eabi %s      -o - | FileCheck %s4; RUN: llc -mtriple thumbv7m-eabi      %s -o - | FileCheck %s --check-prefix=CHECK-PACBTI5 6; Check we don't emit PACBTI-M instructions for architectures7; that do not support them.8define hidden i32 @f(i32 %x) #0 {9entry:10  %x.addr = alloca i32, align 411  store i32 %x, ptr %x.addr, align 412  %0 = load i32, ptr %x.addr, align 413  %sub = sub nsw i32 1, %014  %call = call i32 @g(i32 %sub)15  %add = add nsw i32 1, %call16  ret i32 %add17}18; CHECK-LABEL: f:19; CHECK-NOT:   bti20 21; CHECK-PACBTI-LABEL: f:22; CHECK-PACBTI:       pacbti23declare dso_local i32 @g(i32)24 25attributes #0 = { noinline nounwind "sign-return-address"="non-leaf" "branch-target-enforcement" }26