On 29/3/25 08:51, Akihiko Odaki wrote:
> On 2025/03/24 19:21, Alex Bennée wrote:
>> We can handle larger sized memops now, expand the range of the assert.
>>
>> Fixes: 4b473e0c60 (tcg: Expand MO_SIZE to 3 bits)
>> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>>
>> ---
>> v2
>> - instead of 128 use 1 << MO_SIZE for future proofing
>> ---
>> include/exec/memop.h | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/include/exec/memop.h b/include/exec/memop.h
>> index 407a47d82c..6afe50a7d0 100644
>> --- a/include/exec/memop.h
>> +++ b/include/exec/memop.h
>> @@ -162,8 +162,8 @@ static inline unsigned memop_size(MemOp op)
>> static inline MemOp size_memop(unsigned size)
>> {
>> #ifdef CONFIG_DEBUG_TCG
>> - /* Power of 2 up to 8. */
>> - assert((size & (size - 1)) == 0 && size >= 1 && size <= 8);
>> + /* Power of 2 up to 128. */
>
> It may be better to avoid writing the literal number (128) in the
> comment too.
>
> Perhaps it is easier to simply remove the comment instead of updating it
> to explain the assertion without the literal number.
> (size & (size - 1)) == 0 looks cryptic, but it can be replaced with
> is_power_of_2(), which is more obvious and will not need an explanation.
+1 for is_power_of_2()
>
> Regards,
> Akihiko Odaki
>
>> + assert((size & (size - 1)) == 0 && size >= 1 && size <= (1 <<
>> MO_SIZE));
>> #endif
>> return (MemOp)ctz32(size);
>> }
>