Displaying 3 results from an estimated 3 matches for "arminstrs".
2006 Sep 17
0
[LLVMdev] how to declare that two registers must be different
On Sun, 17 Sep 2006, [UTF-8] Rafael Esp?ndola wrote:
> The ARM has a multiply instruction of the form Rd=Rm*Rs where Rd != Rm.
> How can I add this requirement to the instruction definition?
Unfortunately there is currently no great way to do this. Some options
are:
1. Pin one operand to a specific register, one that isn't allocated (e.g.
R12). Use copyto/fromreg to get to it.
2006 Sep 17
2
[LLVMdev] how to declare that two registers must be different
The ARM has a multiply instruction of the form
Rd=Rm*Rs
where Rd != Rm. How can I add this requirement to the instruction definition?
Thanks,
Rafael
2006 Sep 18
4
[LLVMdev] how to declare that two registers must be different
...s sort of thing, but I'm not very familiar with ARM. What
> specific instructions are problematic? MUL looks ok in my copy of the
> ARM ARM.
MUL (and MLA, MuLtiply and Accumulate) are the two well known ones. The
very unofficial, but historically good,
http://www.pinknoise.demon.co.uk/ARMinstrs/ARMinstrs.html#Multiplication
says
"The destination register shall not be the same as the operand
register Rm. R15 shall not be used as an operand or as the
destination register."
Then there's the long multiplication instruction on some ARM
architectures,
(U|S)(MUL|...