From: Stefan Agner <stefan@agner.ch>
To: linux@armlinux.org.uk
Cc: kbuild-all@01.org, kbuild test robot <lkp@intel.com>,
ndesaulniers@google.com, natechancellor@gmail.com, arnd@arndb.de,
ard.biesheuvel@linaro.org, nicolas.pitre@linaro.org,
peterz@infradead.org, mingo@redhat.com, will.deacon@arm.com,
julien.thierry@arm.com, mark.rutland@arm.com,
linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 2/3] ARM: uaccess: use unified assembler language syntax
Date: Wed, 02 Jan 2019 16:09:04 +0100 [thread overview]
Message-ID: <8f6aeb56adcb7a937c834ee24b654805@agner.ch> (raw)
In-Reply-To: <201812310309.fFJTFUuf%fengguang.wu@intel.com>
On 30.12.2018 20:12, kbuild test robot wrote:
> Hi Stefan,
>
> I love your patch! Yet something to improve:
>
> [auto build test ERROR on arm/for-next]
> [also build test ERROR on v4.20 next-20181224]
> [if your patch is applied to the wrong git tree, please drop us a note
> to help improve the system]
>
> url:
> https://github.com/0day-ci/linux/commits/Stefan-Agner/ARM-fix-argument-count-to-match-macro-definition/20181231-001137
> base: git://git.armlinux.org.uk/~rmk/linux-arm.git for-next
> config: arm-ebsa110_defconfig (attached as .config)
> compiler: arm-linux-gnueabi-gcc (Debian 7.2.0-11) 7.2.0
> reproduce:
> wget
> https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross
> -O ~/bin/make.cross
> chmod +x ~/bin/make.cross
> # save the attached .config to linux build tree
> GCC_VERSION=7.2.0 make.cross ARCH=arm
>
> All errors (new ones prefixed by >>):
>
> /tmp/ccfKN3IW.s: Assembler messages:
> /tmp/ccfKN3IW.s:26: Error: bad instruction `sbcscc r1,r1,r3'
>>> /tmp/ccfKN3IW.s:94: Error: bad instruction `sbcscc r8,r8,r0'
> /tmp/ccfKN3IW.s:104: Error: bad instruction `sbcscc r0,r0,r2'
> /tmp/ccfKN3IW.s:155: Error: bad instruction `sbcscc lr,lr,r2'
> /tmp/ccfKN3IW.s:630: Error: bad instruction `sbcscc r1,r1,r2'
Hm, it seems that gcc always assumes inline assembly is in non-unified
syntax when compiling using -marm:
.syntax divided
@ 244 "arch/arm/kernel/signal.c" 1
adds ip, r1, #760; sbcscc ip, ip, r3; movcc r3, #0
@ 0 "" 2
It seems that gcc would have an option to force unified syntax when
generating code for ARM state (-marm) using -masm-syntax-unified.
However, unfortunately, this seems currently broken. I created a bug in
the gcc bug tracker:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88648
The only solution I found is using ".syntax unified" in inline assembly,
not pretty but seems to do the job... Will send a v2.
--
Stefan
> --
> /tmp/cc9oa73P.s: Assembler messages:
> /tmp/cc9oa73P.s:2036: Error: bad instruction `sbcscc r1,r1,r3'
> /tmp/cc9oa73P.s:3325: Error: bad instruction `sbcscc r3,r3,r0'
> /tmp/cc9oa73P.s:3724: Error: bad instruction `sbcscc r2,r2,r3'
> /tmp/cc9oa73P.s:4242: Error: bad instruction `sbcscc r1,r1,r3'
>>> /tmp/cc9oa73P.s:4304: Error: bad instruction `sbcscc r10,r10,r2'
> /tmp/cc9oa73P.s:4831: Error: bad instruction `sbcscc r1,r1,r3'
> /tmp/cc9oa73P.s:4973: Error: bad instruction `sbcscc r1,r1,r3'
> /tmp/cc9oa73P.s:5059: Error: bad instruction `sbcscc r0,r0,r2'
> /tmp/cc9oa73P.s:5076: Error: bad instruction `sbcscc r0,r0,r2'
> /tmp/cc9oa73P.s:5120: Error: bad instruction `sbcscc r1,r1,r3'
> --
> /tmp/ccnaC92i.s: Assembler messages:
>>> /tmp/ccnaC92i.s:133: Error: bad instruction `sbcscc r7,r7,r1'
> /tmp/ccnaC92i.s:225: Error: bad instruction `sbcscc r1,r1,r3'
> /tmp/ccnaC92i.s:631: Error: bad instruction `sbcscc ip,ip,r3'
>
> ---
> 0-DAY kernel test infrastructure Open Source Technology Center
> https://lists.01.org/pipermail/kbuild-all Intel Corporation
next prev parent reply other threads:[~2019-01-02 15:09 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-12-30 16:08 [PATCH 0/3] ARM: trivial assembly fixes to enable LLVM as Stefan Agner
2018-12-30 16:08 ` [PATCH 1/3] ARM: fix argument count to match macro definition Stefan Agner
2018-12-30 16:08 ` [PATCH 2/3] ARM: uaccess: use unified assembler language syntax Stefan Agner
2018-12-30 19:30 ` kbuild test robot
[not found] ` <201812310309.fFJTFUuf%fengguang.wu@intel.com>
2019-01-02 15:09 ` Stefan Agner [this message]
2018-12-30 16:08 ` [PATCH 3/3] ARM: spinlock: " Stefan Agner
2018-12-30 21:27 ` kbuild test robot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=8f6aeb56adcb7a937c834ee24b654805@agner.ch \
--to=stefan@agner.ch \
--cc=ard.biesheuvel@linaro.org \
--cc=arnd@arndb.de \
--cc=julien.thierry@arm.com \
--cc=kbuild-all@01.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=lkp@intel.com \
--cc=mark.rutland@arm.com \
--cc=mingo@redhat.com \
--cc=natechancellor@gmail.com \
--cc=ndesaulniers@google.com \
--cc=nicolas.pitre@linaro.org \
--cc=peterz@infradead.org \
--cc=will.deacon@arm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox