2002-04-07 08:14:44 +00:00
|
|
|
; This testcase checks to make sure that the assembler can handle floating
|
|
|
|
; point constants in IEEE hex format. This also checks that the disassembler,
|
|
|
|
; when presented with a FP constant that cannot be represented exactly in
|
|
|
|
; exponential form, outputs it correctly in hex format. This is a distillation
|
|
|
|
; of the bug that was causing the Olden Health benchmark to output incorrect
|
|
|
|
; results!
|
|
|
|
;
|
2008-02-14 07:57:12 +00:00
|
|
|
; RUN: llvm-as < %s | opt -constprop | llvm-dis > %t.1
|
|
|
|
; RUN: llvm-as < %s | llvm-dis | llvm-as | opt -constprop | \
|
|
|
|
; RUN: llvm-dis > %t.2
|
2003-09-26 13:58:44 +00:00
|
|
|
; RUN: diff %t.1 %t.2
|
2002-04-07 08:14:44 +00:00
|
|
|
|
2008-02-14 07:57:12 +00:00
|
|
|
define double @test() {
|
2009-06-04 22:49:04 +00:00
|
|
|
%tmp = fmul double 7.200000e+101, 0x427F4000 ; <double> [#uses=1]
|
2008-02-14 07:57:12 +00:00
|
|
|
ret double %tmp
|
|
|
|
}
|