On Tue, 2010-01-19 at 05:29 -0500, Mike Frysinger wrote:
> On Tue, Jan 19, 2010 at 05:13,  <[email protected]> wrote:
> > Modified: trunk/arch/blackfin/mach-common/interrupt.S (8189 => 8190)
> >
> > @@ -88,7 +88,13 @@
> >  #else
> >     cli r1;
> >  #endif
> > -   TRACE_IRQS_OFF
> > +#ifdef CONFIG_TRACE_IRQFLAGS
> > +   [--sp] = r0;
> > +   sp += -12;
> > +   call _trace_hardirqs_off;
> > +   sp += 12;
> > +   r0 = [sp++];
> > +#endif
> 
> i dont think you need to save r0 here.  if you look below, you'll see
> places where r0 gets clobbered and then finally restored.  no one uses
> it.
> -mike

I think "r0" contains the irq number, do_irq() will use it:

ffa00fd0 <_do_irq>:
ffa00fd0:       67 01           [--SP] = RETS;
ffa00fd2:       30 e3 f3 28     CALL 0x61b8 <__mcount>;
ffa00fd6:       27 01           RETS = [SP++];
ffa00fd8:       32 60           R2 = 0x6 (X);           /*
R2=0x6(  6) */
ffa00fda:       10 08           CC = R0 == R2;

-Yi


_______________________________________________
Linux-kernel-commits mailing list
[email protected]
https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits

Reply via email to