brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.2 KiB · 88789a1 Raw
75 lines · plain
1; RUN: llc -verify-machineinstrs -enable-machine-outliner -mtriple aarch64 %s -o - | \2; RUN:   FileCheck %s --check-prefixes CHECK,V8A3; RUN: llc -verify-machineinstrs -enable-machine-outliner -mtriple aarch64 -mattr=+v8.3a %s -o - | \4; RUN:   FileCheck %s --check-prefixes CHECK,V83A5 6define void @a() "sign-return-address"="all" "sign-return-address-key"="a_key" nounwind {7; CHECK-LABEL:      a:                                     // @a8; V8A:              hint #259; V83A:             paciasp10  %1 = alloca i32, align 411  %2 = alloca i32, align 412  %3 = alloca i32, align 413  %4 = alloca i32, align 414  %5 = alloca i32, align 415  %6 = alloca i32, align 416  store i32 1, ptr %1, align 417  store i32 2, ptr %2, align 418  store i32 3, ptr %3, align 419  store i32 4, ptr %4, align 420  store i32 5, ptr %5, align 421  store i32 6, ptr %6, align 422; V8A:              hint #2923; V83A:             retaa24  ret void25}26 27define void @b() "sign-return-address"="all" nounwind {28; CHECK-LABEL:      b:                                     // @b29; V8A:              hint #2530; V83A:             paciasp31  %1 = alloca i32, align 432  %2 = alloca i32, align 433  %3 = alloca i32, align 434  %4 = alloca i32, align 435  %5 = alloca i32, align 436  %6 = alloca i32, align 437  store i32 1, ptr %1, align 438  store i32 2, ptr %2, align 439  store i32 3, ptr %3, align 440  store i32 4, ptr %4, align 441  store i32 5, ptr %5, align 442  store i32 6, ptr %6, align 443; V8A:              hint #2944; V83A:             retaa45  ret void46}47 48define void @c() "sign-return-address"="all" nounwind {49; CHECK-LABEL:      c:                                     // @c50; V8A:              hint #2551; V83A:             paciasp52  %1 = alloca i32, align 453  %2 = alloca i32, align 454  %3 = alloca i32, align 455  %4 = alloca i32, align 456  %5 = alloca i32, align 457  %6 = alloca i32, align 458  store i32 1, ptr %1, align 459  store i32 2, ptr %2, align 460  store i32 3, ptr %3, align 461  store i32 4, ptr %4, align 462  store i32 5, ptr %5, align 463  store i32 6, ptr %6, align 464; V8A:              hint #2965; V83A:             retaa66  ret void67}68 69; CHECK-LABEL:      OUTLINED_FUNCTION_0:70; V8A:                hint #2571; V83A:               paciasp72; V8A:                hint #2973; V8A-NEXT:           ret74; V83A:               retaa75