From 3095f29f3df05856fb237f5b403debce62eb045c Mon Sep 17 00:00:00 2001 From: Volker Berlin Date: Fri, 19 Apr 2019 17:39:49 +0200 Subject: [PATCH] floating point numbers must written with hexadecimal literals --- .../jwebassembly/text/TextModuleWriter.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/de/inetsoftware/jwebassembly/text/TextModuleWriter.java b/src/de/inetsoftware/jwebassembly/text/TextModuleWriter.java index 9fbefc2..20f63be 100644 --- a/src/de/inetsoftware/jwebassembly/text/TextModuleWriter.java +++ b/src/de/inetsoftware/jwebassembly/text/TextModuleWriter.java @@ -240,7 +240,18 @@ public class TextModuleWriter extends ModuleWriter { @Override protected void writeConst( Number value, ValueType valueType ) throws IOException { newline( methodOutput ); - methodOutput.append( valueType ).append( ".const " ).append( value ); + methodOutput.append( valueType ).append( ".const " ); + switch( valueType ) { + case f32: + methodOutput.append( Float.toHexString( value.floatValue() ) ).append( " ;;" ).append( value ); + break; + case f64: + methodOutput.append( Double.toHexString( value.doubleValue() ) ).append( " ;;" ).append( value ); + break; + default: + methodOutput.append( value ); + break; + } } /**