88 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 52; RUN: llc < %s -mtriple powerpc | FileCheck %s -check-prefixes=CHECK-32-BE3; RUN: llc < %s -mtriple powerpcle | FileCheck %s -check-prefixes=CHECK-32-LE4; RUN: llc < %s -mtriple powerpc64 | FileCheck %s -check-prefixes=CHECK-64-BE5; RUN: llc < %s -mtriple powerpc64le | FileCheck %s -check-prefixes=CHECK-64-LE6 7declare dso_local void @main()8 9define dso_local void @naked() naked "frame-pointer"="all" {10; CHECK-32-BE-LABEL: naked:11; CHECK-32-BE: # %bb.0:12; CHECK-32-BE-NEXT: bl main13;14; CHECK-32-LE-LABEL: naked:15; CHECK-32-LE: # %bb.0:16; CHECK-32-LE-NEXT: bl main17;18; CHECK-64-BE-LABEL: naked:19; CHECK-64-BE: # %bb.0:20; CHECK-64-BE-NEXT: bl main21; CHECK-64-BE-NEXT: nop22;23; CHECK-64-LE-LABEL: naked:24; CHECK-64-LE: # %bb.0:25; CHECK-64-LE-NEXT: bl main26; CHECK-64-LE-NEXT: nop27 call void @main()28 unreachable29}30 31define dso_local void @normal() "frame-pointer"="all" {32; CHECK-32-BE-LABEL: normal:33; CHECK-32-BE: # %bb.0:34; CHECK-32-BE-NEXT: mflr 035; CHECK-32-BE-NEXT: stwu 1, -16(1)36; CHECK-32-BE-NEXT: stw 31, 12(1)37; CHECK-32-BE-NEXT: stw 0, 20(1)38; CHECK-32-BE-NEXT: .cfi_def_cfa_offset 1639; CHECK-32-BE-NEXT: .cfi_offset r31, -440; CHECK-32-BE-NEXT: .cfi_offset lr, 441; CHECK-32-BE-NEXT: mr 31, 142; CHECK-32-BE-NEXT: .cfi_def_cfa_register r3143; CHECK-32-BE-NEXT: bl main44;45; CHECK-32-LE-LABEL: normal:46; CHECK-32-LE: # %bb.0:47; CHECK-32-LE-NEXT: mflr 048; CHECK-32-LE-NEXT: stwu 1, -16(1)49; CHECK-32-LE-NEXT: stw 31, 12(1)50; CHECK-32-LE-NEXT: stw 0, 20(1)51; CHECK-32-LE-NEXT: .cfi_def_cfa_offset 1652; CHECK-32-LE-NEXT: .cfi_offset r31, -453; CHECK-32-LE-NEXT: .cfi_offset lr, 454; CHECK-32-LE-NEXT: mr 31, 155; CHECK-32-LE-NEXT: .cfi_def_cfa_register r3156; CHECK-32-LE-NEXT: bl main57;58; CHECK-64-BE-LABEL: normal:59; CHECK-64-BE: # %bb.0:60; CHECK-64-BE-NEXT: mflr 061; CHECK-64-BE-NEXT: std 31, -8(1)62; CHECK-64-BE-NEXT: stdu 1, -128(1)63; CHECK-64-BE-NEXT: std 0, 144(1)64; CHECK-64-BE-NEXT: .cfi_def_cfa_offset 12865; CHECK-64-BE-NEXT: .cfi_offset r31, -866; CHECK-64-BE-NEXT: .cfi_offset lr, 1667; CHECK-64-BE-NEXT: mr 31, 168; CHECK-64-BE-NEXT: .cfi_def_cfa_register r3169; CHECK-64-BE-NEXT: bl main70; CHECK-64-BE-NEXT: nop71;72; CHECK-64-LE-LABEL: normal:73; CHECK-64-LE: # %bb.0:74; CHECK-64-LE-NEXT: mflr 075; CHECK-64-LE-NEXT: std 31, -8(1)76; CHECK-64-LE-NEXT: stdu 1, -48(1)77; CHECK-64-LE-NEXT: std 0, 64(1)78; CHECK-64-LE-NEXT: .cfi_def_cfa_offset 4879; CHECK-64-LE-NEXT: .cfi_offset r31, -880; CHECK-64-LE-NEXT: .cfi_offset lr, 1681; CHECK-64-LE-NEXT: mr 31, 182; CHECK-64-LE-NEXT: .cfi_def_cfa_register r3183; CHECK-64-LE-NEXT: bl main84; CHECK-64-LE-NEXT: nop85 call void @main()86 unreachable87}88