This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug inline-asm/10396] Constraint alternatives cause error " `asm' operand requires impossible reload"
- From: "rearnsha at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 14 Jan 2004 18:32:54 -0000
- Subject: [Bug inline-asm/10396] Constraint alternatives cause error " `asm' operand requires impossible reload"
- References: <20030414040601.10396.pgonzalez@bluel.com>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From rearnsha at gcc dot gnu dot org 2004-01-14 18:32 -------
Note that the compiler gets nearly optimal code if you simply write:
inline int mfp(int a, int b)
{
return (((long long) a) * b) >> 16;
}
Which is only out by a couple of cycles (A couple of redundant mov insns).
However, by not using an ASM you allow the compiler to schedule the instructions
independently, and may also expose additional optimization opportunities.
None of the above fixes the bug, but may be sufficient to solve your immediate
problems.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=10396