Re: [kvm-unit-tests PATCH 9/9] s390x: skrf: Fix tprot assembly

Janosch Frank
2021-09-22T11:47:28Z

On 9/22/21 11:34 AM, Claudio Imbrenda wrote:
> On Wed, 22 Sep 2021 07:18:11 +0000
> Janosch Frank <frankja@linux.ibm.com> wrote:
>
>> It's a base + displacement address so we need to address it via 0(%[addr]).
>>
>> Signed-off-by: Janosch Frank <frankja@linux.ibm.com>
>
> Reviewed-by: Claudio Imbrenda <imbrenda@linux.ibm.com>
>
> but see comment below
>
>> ---
>> s390x/skrf.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/s390x/skrf.c b/s390x/skrf.c
>> index 8ca7588c..84fb762c 100644
>> --- a/s390x/skrf.c
>> +++ b/s390x/skrf.c
>> @@ -103,7 +103,7 @@ static void test_tprot(void)
>> {
>> report_prefix_push("tprot");
>> expect_pgm_int();
>> - asm volatile("tprot %[addr],0xf0(0)\n"
>> + asm volatile("tprot 0(%[addr]),0xf0(0)\n"
>
> I think the displacement defaults to 0 if not specified?
>
> did you get a warning, or why are you changing this now?

It fixes one of the ~18 clang warnings and making it explicit directly
tells you it's a B+D instruction i.e. it looks cleaner to me.

>
>> : : [addr] "a" (pagebuf) : );
>> check_pgm_int_code(PGM_INT_CODE_SPECIAL_OPERATION);
>> report_prefix_pop();
>