ARM: 2 opcodes for expdz instruction
Richard Earnshaw
Richard.Earnshaw@foss.arm.com
Tue Aug 18 22:10:47 GMT 2020
On 18/08/2020 21:44, Martin Liška wrote:
> On 8/18/20 8:48 PM, Joe Abbey wrote:
>> The second form "0xee788160" is almost certainly supposed to be "expez"
>>
>> http://netwinder.osuosl.org/pub/netwinder/docs/arm/ARM7500FEvB_5.pdf
>
> Neat.
>
>>
>> Likely never noticed because:
>>
>> It is recommended that the following floating-point operations are
>> implemented with
>> calls
>> • power
>> to an appropriate library (for example, the C library):
>> • reverse power
>> • polar angle
>> • logarithm base 10
>> • logarithm base e
>> • exponent
>> • sine
>> • cosine
>> • tangent
>> • arc sine
>> • arc cosine
>> • arc tangent
>> However, for backwards compatibility with existing floating-point
>> code, the following floating-point mnemonics are defined in the ARM
>> floating-point instruction set. These opcodes are treated by the FPA
>> as undefined instructions, and must be handled by support code, which
>> is less efficient than using library calls
>
> I see.
>
> Can you please send a patch that will make the rename?
>
I really wouldn't bother. FPA has been obsolete for over 15 years (and
it's well over 5 since all support in GCC was removed).
If it's wrong and hasn't been noticed before now then that's just
evidence that nobody really cares about this.
R.
> Thanks,
> Martin
>
>>
>>
>> On Tue, Aug 18, 2020 at 1:11 PM Martin Liška <mliska@suse.cz
>> <mailto:mliska@suse.cz>> wrote:
>>
>> Hello.
>>
>>
>>
>> It's a hairy code, but Richard added in
>> 90e4755aeeb129a7d77334596bc7853ca7b95c67:
>>
>>
>>
>> $ git show 90e4755aeeb129a7d77334596bc7853ca7b95c67 | grep expdz
>>
>> + {"expdz", 0xee7081e0, 3, FPU_FPA_EXT_V1, do_fpa_monadic},
>>
>> + {"expdz", 0xee788160, 3, FPU_FPA_EXT_V1, do_fpa_monadic},
>>
>>
>>
>> So the instruction has 2 opcodes. Is it a typo?
>>
>>
>>
>> Thanks,
>>
>> Martin
>>
>
More information about the Binutils
mailing list