Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame^] | 1 | ; This testcase checks to make sure that the assembler can handle floating |
| 2 | ; point constants in IEEE hex format. This also checks that the disassembler, |
| 3 | ; when presented with a FP constant that cannot be represented exactly in |
| 4 | ; exponential form, outputs it correctly in hex format. This is a distillation |
| 5 | ; of the bug that was causing the Olden Health benchmark to output incorrect |
| 6 | ; results! |
| 7 | ; |
| 8 | ; RUN: llvm-upgrade < %s | llvm-as | opt -constprop | llvm-dis > %t.1 |
| 9 | ; RUN: llvm-upgrade < %s | llvm-as | llvm-dis | llvm-as | opt -constprop | \ |
| 10 | ; RUN: llvm-dis > %t.2 |
| 11 | ; RUN: diff %t.1 %t.2 |
| 12 | |
| 13 | implementation |
| 14 | |
| 15 | double "test"() |
| 16 | begin |
| 17 | %tmp = mul double 72.0e100, 0x427f4000 |
| 18 | ret double %tmp |
| 19 | end |