--- /dev/null
+; 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!
+;
+; RUN: as < %s | opt -constprop | dis > Output/%s && \
+; RUN: as < %s | dis | as | opt -constprop | dis > Output/%s2 && \
+; RUN: diff Output/%s Output/%s2
+
+implementation
+
+double "test"()
+begin
+ %tmp = mul double 72.0e100, 0x427f4000
+ ret double %tmp
+end