diff options
| author | Daniel Glöckner <daniel-gl@gmx.net> | 2013-02-03 17:51:33 +0100 |
|---|---|---|
| committer | Daniel Glöckner <daniel-gl@gmx.net> | 2013-02-03 17:51:33 +0100 |
| commit | 506193724f8a1e67de9396486fb4fd090b9f61bb (patch) | |
| tree | ee79c3713ac30788f438bf6510ba3a10ae3aa51e /arm-gen.c | |
| parent | 6f4983af5b817e55bff19ea94efa85f6ff395c4d (diff) | |
| download | tinycc-506193724f8a1e67de9396486fb4fd090b9f61bb.tar.gz tinycc-506193724f8a1e67de9396486fb4fd090b9f61bb.tar.bz2 | |
arm: fix conversion from integer to float/double with VFP
The source register was not encoded in the instruction.
Diffstat (limited to 'arm-gen.c')
| -rw-r--r-- | arm-gen.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -1847,7 +1847,7 @@ ST_FUNC void gen_cvt_itof1(int t) #ifdef TCC_ARM_VFP r2=vfpr(vtop->r=get_reg(RC_FLOAT)); o(0xEE000A10|(r<<12)|(r2<<16)); /* fmsr */ - r2<<=12; + r2|=r2<<12; if(!(vtop->type.t & VT_UNSIGNED)) r2|=0x80; /* fuitoX -> fsituX */ o(0xEEB80A40|r2|T2CPR(t)); /* fYitoX*/ |
