{standard input}:1174: Error: inappropriate arguments for opcode 'mpydu' (fwd)
Nicolas Pitre
nico at fluxnic.net
Wed Sep 30 17:56:39 EDT 2020
On Wed, 30 Sep 2020, Vineet Gupta wrote:
> Hi Nicolas,
>
> On 9/30/20 2:23 PM, Nicolas Pitre wrote:
> > Hello,
> >
> > I just realized you might not be aware of the following issue.
> >
> > The kernel kbuild test robot project identified a build failure on ARC
> > that bisects down to a patch of mine.
>
> Your patch to Linux kernel ? Indeed the report we got for build failure didn't
> provide that context and we will appreciate pointers to same just for curiosity.
Here is the original report:
https://www.spinics.net/lists/kernel/msg3596096.html
> > It turns out that my patch is
> > highlighting a bug in gcc for ARC.
>
> In any case, we did reach the same conclusion it is indeed an ARC gcc bug (for Big
> endian builds only) and have created a github ticket for our gcc maintainer to
> resolve. Please note that we've not seen it internally as Big Endian is an
> optional configuration option and not in wide spread use for us.
>
> https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/issues/300
>
>
> And we can also confirm this is seen in gcc 9 and gcc 10 both.
>
> Thx,
> -Vineet
>
> >
> > ---------- Forwarded message ----------
> > Date: Mon, 28 Sep 2020 17:43:20 -0400 (EDT)
> > From: Nicolas Pitre <nico at fluxnic.net>
> > To: Rong Chen <rong.a.chen at intel.com>
> > Cc: kernel test robot <lkp at intel.com>, kbuild-all at lists.01.org,
> > linux-kernel at vger.kernel.org, Arnd Bergmann <arnd at arndb.de>, gcc at gcc.gnu.org
> > Message-ID: <nycvar.YSQ.7.78.906.2009281705410.1581 at knanqh.ubzr>
> > Subject: Re: {standard input}:1174: Error: inappropriate arguments for opcode
> > 'mpydu'
> >
> > On Sun, 27 Sep 2020, Rong Chen wrote:
> >
> >> Hi Nicolas,
> >>
> >> Thanks for the feedback, the error still remains with gcc 10.2.0:
> > I've created the simplest test case that can be. You won't believe it.
> >
> > Test case:
> >
> > $ cat test.c
> > unsigned int test(unsigned int x, unsigned long long y)
> > {
> > y /= 0x20000000;
> > if (x > 1)
> > y *= x;
> > return y;
> > }
> > $ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/0day/gcc-9.3.0-nolibc/arc-elf/libexec/gcc/arc-elf/9.3.0
> > $ ~/0day/gcc-9.3.0-nolibc/arc-elf/bin/arc-elf-gcc -mcpu=hs38 -mbig-endian -O2 -c test.c
> > /tmp/cc0GAomh.s: Assembler messages:
> > /tmp/cc0GAomh.s:21: Error: inappropriate arguments for opcode 'mpydu'
> >
> > I know nothing about ARC. Please anyone take it over from here.
> >
> >
> > Nicolas
>
>
More information about the linux-snps-arc
mailing list