On 3/8/19 3:28 PM, Philippe Mathieu-Daudé wrote:
>> +        CASE_OP_32_64(extract2):
>> +            if (arg_is_const(op->args[1]) && arg_is_const(op->args[2])) {
>> +                TCGArg v1 = arg_info(op->args[1])->val;
>> +                TCGArg v2 = arg_info(op->args[2])->val;
>> +                tmp = (v1 >> op->args[3]) | (v2 << (64 - op->args[3]));
> Shouldn't this be:
> 
> tmp = (v1 >> op->args[3]) | (v2 << (TCG_TARGET_REG_BITS - op->args[3]));

No, but there should be different constants for the two cases.

Thanks.


r~

Reply via email to