Re: [signal:master 62/63] arch/m68k/kernel/entry.S:115: Error: operands mismatch -- statement `moveml (%sp)+,%d0-%d2' ignored

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Sep 09, 2012 at 12:28:17AM +0800, Fengguang Wu wrote:
> > On which toolchain?  It had been a valid instruction on all m68k, starting with
> > 68000.  Is that as(1) insisting on %sp@+ form instead of (%sp)+?  But we have
> > both kinds used in arch/m68k, so if some toolchain version barfs on that, it's
> > probably rather unhappy elsewhere...

Hrrrm....  Looks like it's an effect of weird addressing modes being
somewhat trimmed down on coldfire...  So these lines should become
something like
        moveml  4(%sp), %d1-%d2 
        moveq   #PT_SIZEOF,%d3
        moveml  %d1-%d3,(%sp)   | we are not returning anyway...

With that it still works on aranym and AFAICS those forms should be acceptable
on anything, including all coldfire variants...  As far as I can see, all
places using increment/decrement forms of movem (essentially, bulk push/pop
on arbitrary set of registers) are in the code that never gets touched on
coldfire and non-MMU builds; the only potential exception is non-assembler
variant of SAVE_ALL_INT (#define SAVE_ALL_INT .... in asm/entry.h), but that
macro is never actually used anywhere in C code.

OK, folded and pushed.  Should be on git.kernel.org shortly...
--
To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Kernel Development]     [Kernel Announce]     [Kernel Newbies]     [Linux Networking Development]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Device Mapper]

  Powered by Linux