57 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2 3; RUN: llc -mtriple=powerpc64le-unknown-linux-gnu -global-isel -code-model=small \4; RUN: -verify-machineinstrs -o - < %s | FileCheck %s --check-prefix=SMALL5; RUN: llc -mtriple=powerpc64le-unknown-linux-gnu -global-isel -code-model=medium \6; RUN: -verify-machineinstrs -o - < %s | FileCheck %s --check-prefix=MEDIUM7; RUN: llc -mtriple=powerpc64le-unknown-linux-gnu -global-isel -code-model=large \8; RUN: -verify-machineinstrs -o - < %s | FileCheck %s --check-prefix=LARGE9 10define float @foo_float() {11; SMALL-LABEL: foo_float:12; SMALL: # %bb.0: # %entry13; SMALL-NEXT: ld 3, .LC0@toc(2)14; SMALL-NEXT: lfs 1, 0(3)15; SMALL-NEXT: blr16;17; MEDIUM-LABEL: foo_float:18; MEDIUM: # %bb.0: # %entry19; MEDIUM-NEXT: addis 3, 2, .LCPI0_0@toc@ha20; MEDIUM-NEXT: addi 3, 3, .LCPI0_0@toc@l21; MEDIUM-NEXT: lfs 1, 0(3)22; MEDIUM-NEXT: blr23;24; LARGE-LABEL: foo_float:25; LARGE: # %bb.0: # %entry26; LARGE-NEXT: addis 3, 2, .LC0@toc@ha27; LARGE-NEXT: ld 3, .LC0@toc@l(3)28; LARGE-NEXT: lfs 1, 0(3)29; LARGE-NEXT: blr30entry:31 ret float 1.000000e+0032}33 34define double @foo_double() {35; SMALL-LABEL: foo_double:36; SMALL: # %bb.0: # %entry37; SMALL-NEXT: ld 3, .LC1@toc(2)38; SMALL-NEXT: lfd 1, 0(3)39; SMALL-NEXT: blr40;41; MEDIUM-LABEL: foo_double:42; MEDIUM: # %bb.0: # %entry43; MEDIUM-NEXT: addis 3, 2, .LCPI1_0@toc@ha44; MEDIUM-NEXT: addi 3, 3, .LCPI1_0@toc@l45; MEDIUM-NEXT: lfd 1, 0(3)46; MEDIUM-NEXT: blr47;48; LARGE-LABEL: foo_double:49; LARGE: # %bb.0: # %entry50; LARGE-NEXT: addis 3, 2, .LC1@toc@ha51; LARGE-NEXT: ld 3, .LC1@toc@l(3)52; LARGE-NEXT: lfd 1, 0(3)53; LARGE-NEXT: blr54entry:55 ret double 1.000000e+0056}57