qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v3 3/3] target/arm: Use clear_vec_high more effectively


From: Richard Henderson
Subject: Re: [PATCH v3 3/3] target/arm: Use clear_vec_high more effectively
Date: Tue, 5 May 2020 07:22:00 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0

On 5/4/20 11:09 PM, Philippe Mathieu-Daudé wrote:
>> @@ -7111,7 +7121,7 @@ static void disas_simd_zip_trn
>>       }
>>         tcg_resl = tcg_const_i64(0);
>> -    tcg_resh = tcg_const_i64(0);
>> +    tcg_resh = is_q ? tcg_const_i64(0) : NULL;
>>       tcg_res = tcg_temp_new_i64();
>>         for (i = 0; i < elements; i++) {
>> @@ -7162,9 +7172,12 @@ static void disas_simd_zip_trn(DisasContext *s,
>> uint32_t insn)
> 
> More context:
> 
>            ...
>            ofs = i * esize;
>            if (ofs < 64) {
>                tcg_gen_shli_i64(tcg_res, tcg_res, ofs);
>                tcg_gen_or_i64(tcg_resl, tcg_resl, tcg_res);
>            } else {
>                tcg_gen_shli_i64(tcg_res, tcg_res, ofs - 64);
>                tcg_gen_or_i64(tcg_resh, tcg_resh, tcg_res);
> 
>                          here ^^^^^^^^ tcg_resh is NULL too.
> 
>            }
>        }

When is_q is false, the vector length is 64.  Thus that line is not reachable.


r~



reply via email to

[Prev in Thread] Current Thread [Next in Thread]