31 lines · plain
1; RUN: llvm-link %s %S/Inputs/nofpclass.ll -S -o - | FileCheck -check-prefix=ORDER1 %s2; RUN: llvm-link %S/Inputs/nofpclass.ll %s -S -o - | FileCheck -check-prefix=ORDER2 %s3 4; Make sure nofpclass is dropped if the function was declared as5; nofpclass, but not defined with nofpclass.6 7; ORDER1: define float @caller(float %arg) {8; ORDER1-NEXT: %result = call float @declared_as_nonan(float %arg)9; ORDER1-NEXT: ret float %result10 11; ORDER1: define float @declared_as_nonan(float %arg) {12; ORDER1-NEXT: %add = fadd float %arg, 1.000000e+0013; ORDER1-NEXT: ret float %add14 15 16; ORDER2: define float @declared_as_nonan(float %arg) {17; ORDER2-NEXT: %add = fadd float %arg, 1.000000e+0018; ORDER2-NEXT: ret float %add19 20; ORDER2: define float @caller(float %arg) {21; ORDER2-NEXT: %result = call float @declared_as_nonan(float %arg)22; ORDER2-NEXT: ret float %result23 24 25declare nofpclass(nan) float @declared_as_nonan(float nofpclass(nan))26 27define float @caller(float %arg) {28 %result = call float @declared_as_nonan(float %arg)29 ret float %result30}31