Hi!
On Thu, Apr 08, 2021 at 11:24:04AM +0200, Jakub Jelinek wrote:
[ snip great explanation ]
> The following patch fixes it, by doing the shift in inner_mode properly
> and then after the shift doing the lowpart subreg and masking already
> in mode.
>
> Bootstrapped/regtested on x86_64-linux a
Hi!
The following testcase is miscompiled on x86_64-linux.
expand_compound_operation is called on
(zero_extract:DI (mem/c:TI (reg/f:DI 16 argp) [3 i+0 S16 A128])
(const_int 16 [0x10])
(const_int 63 [0x3f]))
so mode is DImode, inner_mode is TImode, pos 63, len 16 and modewidth 64.
A coupl