[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[ft-devel] Re: [ft] Re: Fw: Compile Error use arm-linux-gcc3.4.1
From: |
mpsuzuki |
Subject: |
[ft-devel] Re: [ft] Re: Fw: Compile Error use arm-linux-gcc3.4.1 |
Date: |
Sun, 16 Jan 2011 11:18:19 +0900 |
Dear Robin,
On Sun, 16 Jan 2011 00:55:49 GMT
Robin Watts <address@hidden> wrote:
>In message <address@hidden>
> address@hidden wrote:
>> "orr %0, %2, lsl #16\n\t" /* %0 |= %2 << 16 */
>
>vs
>
>> "orr %0, %0, %2, lsl #16\n\t" /* %0 |= %2 << 16 */
>>
>> You can find the number of arguments to "orr" is different.
>
>The original ARM assembler format used the 3 register form. The thumb
>instruction set is more tightly constrained, and insists that the
>destination and first source register are the same.
Thank you for the explanation of the historical
background of 3-operands syntax (that I called
as "omitted" syntax). Hmm, so, if I used 4-operands
syntax in the assembly code, it cannot be assembled
by THUMB instruction, and the codesize would be worse...
Should I insert some ifdef to enable original
3-operands syntax for the platform with THUMB?
Regards,
mpsuzuki