Test for float varargs.
[oota-llvm.git] / test / CodeGen / PowerPC / 2006-12-01-float_varg.ll
1 ; RUN: llvm-as < %s | llc -march=ppc64 -o - | tail -n +2 > Output/2006-12-01-float_varg.s
2 ; RUN: as -arch ppc64 Output/2006-12-01-float_varg.s -o Output/2006-12-01-float_varg.o
3 ; RUN: gcc -arch ppc64 Output/2006-12-01-float_varg.o -o Output/2006-12-01-float_varg.exe
4 ; RUN: Output/2006-12-01-float_varg.exe | grep "foo 1.230000 1.231210 3.100000 1.310000"
5
6 %str = internal constant [17 x sbyte] c"foo %f %f %f %f\0A\00"
7
8 implementation
9
10 declare int %printf(sbyte*, ...)
11
12 int %main(int %argc, sbyte** %argv) {
13 entry:
14         %tmp = tail call int (sbyte*, ...)* %printf( sbyte* getelementptr ([17 x sbyte]* %str, int 0, uint 0), double 1.23, double 1.23121, double 3.1, double 1.31 )
15         ret int 0
16 }