Messages in this thread | | | From | Nick Desaulniers <> | Date | Thu, 7 Mar 2019 16:04:23 -0800 | Subject | Re: [PATCH 2/2] ARM: futex: make futex_detect_cmpxchg more reliable |
| |
On Thu, Mar 7, 2019 at 3:49 PM Russell King - ARM Linux admin <linux@armlinux.org.uk> wrote: > > On Thu, Mar 07, 2019 at 11:39:08AM -0800, Nick Desaulniers wrote: > > Underspecification of constraints to extended inline assembly is a > > common issue exposed by other compilers (and possibly but in-effect > > infrequently compiler upgrades). > > I don't see what is "underspecified" in the original constraints. > Please explain.
From the link:
The problem is that in the T(streq) insn, %3 and %4 MUST be different registers, but nothing in the asm() constrains them to be different.
> > > "One way of fixing this is to make uaddr an input/output register, since > > > "that prevents it from overlapping any other input or output."
-- Thanks, ~Nick Desaulniers
| |