Akira Hatanaka | 6068932 | 2013-02-22 21:10:03 +0000 | [diff] [blame] | 1 | ; RUN: llc -march=mips64el -mcpu=mips64r2 -O3 < %s |\ |
| 2 | ; RUN: FileCheck %s -check-prefix=HARD |
| 3 | ; RUN: llc -march=mips64el -mcpu=mips64r2 -soft-float < %s |\ |
| 4 | ; RUN: FileCheck %s -check-prefix=SOFT |
| 5 | |
| 6 | ; Check that %add is not passed in an integer register. |
| 7 | ; |
Stephen Lin | 8b2b8a1 | 2013-07-14 06:24:09 +0000 | [diff] [blame] | 8 | ; HARD-LABEL: callfloor: |
Akira Hatanaka | 6068932 | 2013-02-22 21:10:03 +0000 | [diff] [blame] | 9 | ; HARD-NOT: dmfc1 $4 |
| 10 | |
| 11 | define double @callfloor(double %d) nounwind readnone { |
| 12 | entry: |
| 13 | %add = fadd double %d, 1.000000e+00 |
| 14 | %call = tail call double @floor(double %add) nounwind readnone |
| 15 | ret double %call |
| 16 | } |
| 17 | |
| 18 | declare double @floor(double) nounwind readnone |
| 19 | |
| 20 | ; Check call16. |
| 21 | ; |
Stephen Lin | 8b2b8a1 | 2013-07-14 06:24:09 +0000 | [diff] [blame] | 22 | ; SOFT-LABEL: f64add: |
Akira Hatanaka | 6068932 | 2013-02-22 21:10:03 +0000 | [diff] [blame] | 23 | ; SOFT: ld $25, %call16(__adddf3) |
| 24 | |
| 25 | define double @f64add(double %a, double %b) { |
| 26 | entry: |
| 27 | %add = fadd double %a, %b |
| 28 | ret double %add |
| 29 | } |