summaryrefslogtreecommitdiff
path: root/sys/src/cmd/5l
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@gmx.de>2013-10-06 01:49:15 +0200
committercinap_lenrek <cinap_lenrek@gmx.de>2013-10-06 01:49:15 +0200
commitcb8eac54ed990ae351b4d670b83e17316809e0f0 (patch)
tree2499eca8772819e51acfb4f960f47294f7da3d09 /sys/src/cmd/5l
parent3da35f028f4ff5ca619f9b00d549e1b534568223 (diff)
5l: apply richard millers 5l-incfloat patch (from sources)
Generate correct ARM vfp code for x++ where x is single precision float. Example test program (link with '5l -f'): void _main() { float x; x++;}
Diffstat (limited to 'sys/src/cmd/5l')
-rw-r--r--sys/src/cmd/5l/obj.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/sys/src/cmd/5l/obj.c b/sys/src/cmd/5l/obj.c
index 55886c7dc..f7096a1d7 100644
--- a/sys/src/cmd/5l/obj.c
+++ b/sys/src/cmd/5l/obj.c
@@ -998,6 +998,11 @@ loop:
}
goto casedef;
+ case AMOVDF:
+ if(!vfp || p->from.type != D_FCONST)
+ goto casedef;
+ p->as = AMOVF;
+ /* fall through */
case AMOVF:
if(skip)
goto casedef;