Bug on syscall error test for 64 bits apps

Segher Boessenkool segher at kernel.crashing.org
Tue Mar 30 16:54:45 EST 2004


On 30-mrt-04, at 2:50, Alan Modra wrote:

> On Mon, Mar 29, 2004 at 11:50:10AM +0200, Segher Boessenkool wrote:
>> Also, cmpl with three arguments is not a legal PowerPC instruction,
>> only a POWER instruction. I can't find any GAS flag to stop it
>> assembling POWER-only instructions/mnemonics, though.
>>
>> binutils bug.
>
> feature :)

Bug, actually.

It refuses all other POWER insns (I used -mppc64, but anything else
that refuses POWER insns will do).

Looking deeper into it, the cause is that the L field is defined
as optional.  But it is not.  (Ref.: Book I and/or the PEM v2).

The L field (in binutils) is only used for one other insn: tlbie.
But tlbie always has two operands (says Book III).
But tlbie always has one operand (says the PEM).

Furthermore, tlbiel is defined as having only one operand.
But tlbiel always has two operands (says Book III).
But tlbiel doesn't exist (says the PEM).

I suggest for now, we fix the cmp[l] thing, and make both
tlbie and tlbiel take either one or two operands.

If that's okay with you, I'll send some patches shortly.

Segher

** Sent via the linuxppc64-dev mail list. See http://lists.linuxppc.org/





More information about the Linuxppc64-dev mailing list