PATCH: PR 834: IA64: Change br to brl for "far" branches when possible
H. J. Lu
hjl@lucon.org
Fri May 13 14:24:00 GMT 2005
On Fri, May 13, 2005 at 09:40:46AM +0200, Jan Beulich wrote:
> >+ /* Check if slot 2 is NOP. Possible templates are MBB and BBB.
> >+ For BBB, slot 0 also has to be nop.b. */
> >+ if (!((template == 0x12 /* MBB */
> >+ && (s2 & 0x1e1f8000000LL) == 0x4000000000LL)
> >+ || (template == 0x16 /* BBB */
> >+ && (s0 & 0x1e1f8000000LL) == 0x4000000000LL
> >+ && (s2 & 0x1e1f8000000LL) == 0x4000000000LL)))
> >+ return FALSE;
> >...
>
> I would think the code would become much better readable if the template values were symbolic (macros or enumeration values) and the nop checks would be hidden in macros.
>
I will take a look.
>
> >+ /* For BBB, we need to put nop.m in slot 0 and keep the original
> >+ predicate. */
> >+ t0 &= 0x7e0LL;
>
> Why do you try to keep the predicate on a nop?
Because it was there before.
H.J.
More information about the Binutils
mailing list