Re: [PATCH 1/2] ARM: drop unnecessary WASM

From: Stefan Agner
Date: Sun Mar 17 2019 - 11:44:50 EST


On 06.03.2019 01:47, Nick Desaulniers wrote:
> On Tue, Mar 5, 2019 at 3:39 PM Robin Murphy <robin.murphy@xxxxxxx> wrote:
>>
>> Hi Stefan,
>>
>> On 2019-03-05 10:18 pm, Stefan Agner wrote:
>> > The W macro for generating wide instructions when targeting Thumb-2
>> > is not required for the preload data instructions (pld, pldw) since
>> > they are only available as wide instructions. The GNU assembler seems
>> > to work with or without the .w appended when compiling an Thumb-2
>> > kernel. However, Clang's integrated assembler does not consider the
>> > .w variants as valid instructions:
>> >
>> > ./arch/arm/include/asm/processor.h:133:5: error: invalid instruction
>> > "pldw.w\t%a0 \n"
>> > ^
>> > <inline asm>:2:1: note: instantiated into assembly here
>> > pldw.w [r0]
>> > ^
>> > 1 error generated.
>>
>> Have you filed a bug against Clang for that? Something like "pldwal.w"
>
> Yes; please. For each deficiency you find, please file a bug. We're
> working on identifying what's missing from Clang's integrated
> assembler support. Given the list of issues, it's easier to estimate
> how much effort is needed, which helps us allocate resources towards
> fixing those issues better.
>
> It would be good to know if pldw.w is valid under UAL or not.

As far as I understand the Arm ARM it is valid under UAL.

Reported a bug in LLVM's bug tracker:
https://bugs.llvm.org/show_bug.cgi?id=40972

Will send a v2 patch mentioning this is really a work around for LLVM
and link to the bug report.

>
> Hopefully, the ARM kernel team can stress the importance of assembler
> support for their ISA to their LLVM team.

--
Stefan