brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.3 KiB · 6a11bef Raw
78 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" {7; CHECK-LABEL:      a:                                     // @a8; V8A:              hint #259; V83A:             paciasp10; CHECK-NEXT:      .cfi_negate_ra_state11  %1 = alloca i32, align 412  %2 = alloca i32, align 413  %3 = alloca i32, align 414  %4 = alloca i32, align 415  %5 = alloca i32, align 416  %6 = alloca i32, align 417  store i32 1, ptr %1, align 418  store i32 2, ptr %2, align 419  store i32 3, ptr %3, align 420  store i32 4, ptr %4, align 421  store i32 5, ptr %5, align 422  store i32 6, ptr %6, align 423; V8A:            hint #2924; V83A:           retaa25  ret void26; CHECK:          .cfi_endproc27}28 29define void @b() "sign-return-address"="non-leaf" {30; CHECK-LABEL:     b:                                     // @b31; V8A-NOT:         hint #2532; V83A-NOT:        paciasp33; CHECK-NOT:       .cfi_negate_ra_state34  %1 = alloca i32, align 435  %2 = alloca i32, align 436  %3 = alloca i32, align 437  %4 = alloca i32, align 438  %5 = alloca i32, align 439  %6 = alloca i32, align 440  store i32 1, ptr %1, align 441  store i32 2, ptr %2, align 442  store i32 3, ptr %3, align 443  store i32 4, ptr %4, align 444  store i32 5, ptr %5, align 445  store i32 6, ptr %6, align 446; V8A-NOT:          hint #2947; V83A-NOT:         autiasp48; V83A-NOT:         retaa49  ret void50; CHECK:            .cfi_endproc51}52 53define void @c() "sign-return-address"="all" {54; CHECK-LABEL:         c:              // @c55; V8A:                 hint #2556; V83A:                paciasp57; CHECK-NEXT          .cfi_negate_ra_state58  %1 = alloca i32, align 459  %2 = alloca i32, align 460  %3 = alloca i32, align 461  %4 = alloca i32, align 462  %5 = alloca i32, align 463  %6 = alloca i32, align 464  store i32 1, ptr %1, align 465  store i32 2, ptr %2, align 466  store i32 3, ptr %3, align 467  store i32 4, ptr %4, align 468  store i32 5, ptr %5, align 469  store i32 6, ptr %6, align 470; V8A:            hint #2971; V83A:           retaa72  ret void73; CHECK:          .cfi_endproc74}75 76; CHECK-NOT:      OUTLINED_FUNCTION_{{[0-9]+}}:77; CHECK-NOT:      // -- Begin function78