This is the mail archive of the binutils@sourceware.cygnus.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: PATCH: add pa2.0 system instructions


>> "jeff" == Jeffrey A Law <law@cygnus.com> writes:


 >> Perhaps I don't understand here, but this doesn't seem ambiguous to
 >> me. There isn't ambiguity in the 0, 4, or 9.  In the old syntax, 5 can
 >> only be a displacement.
 jeff> But the code which parses an 'x' operand (or any register operand) will
 jeff> accept an immediate and treat it like a register number.  So, if you
 jeff> are using existing letters to stand for registers, then you've got no
 jeff> way to distinguish between those cases.  It's a serious issue.

 jeff> Given the table fragment I posted, there's no way to get load-word with
 jeff> short displacement without modifying how the 'x' and other register
 jeff> operands are handled because 'x' will interpret the short displacement
 jeff> as a register #.

OK, I see.  Yeah that's a nuisance.  But, if we're willing to go to the effort
of prefixing to free up codes, we can handle this by adding codes that only
accept registers versus the ones that cast immediates to registers.  In this
case, the stricter syntax restriction comes for free.

Jerry 




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]