This is the mail archive of the binutils@sourceware.org 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]
Other format: [Raw text]

Re: [PATCH] ia64: register symbol generation


On Fri, 2005-10-21 at 02:54, Jan Beulich wrote:
> A resulting question is whether it is really needed to store the
> symbols
> for all registers (rather than just the general ones) in md.regsym,
> and
> whether this array (due to its size and the potential of generating
> better
> code for some cross-build hosts) shouldn't be moved to the end of md.

We only use regsym in one place, for indirect register operands.  So it
looks we only need the 11 or so IND_* registers in regsym, plus some
code to do a bounds check and complain if we don't have an IND_*
register here.  Or maybe insert an invalid symbol so that the problem
will be detected later.

Moving it to the end of md sounds reasonable too, as this is a rarely
used field, so we may as well move it out of the way of the more
important fields.

> 	* config/tc-ia64.c (declare_register): Call symbol_create.
> 	(md_begin): Remove local variables total, ar_base, and cr_base.
> 	Start loops for registers at their respective first one. Don't
> 	update md.regsym for alias names. Generate alias name tp for
> r13.
>        * gas/ia64/regs.pl: Also check tp alias of r13.
>        * gas/ia64/regs.s: Regenerate.
>        * gas/ia64/regs.d: Adjust.

OK.
-- 
Jim Wilson, GNU Tools Support, http://www.specifix.com


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