On Jan 27 2020, Richard Sandiford wrote: > * simplify-rtx.c (simplify_truncation): Extend sign/zero_extract > simplification to handle subregs as well as bare regs.
That breaks gcc.target/m68k/pr39726.c @@ -67,39 +67,39 @@ Disassembly of section .text: 00000088 <a0wbs>: 88: 302f 0006 movew %sp@(6),%d0 8c: 906f 000a subw %sp@(10),%d0 - 90: 4a00 tstb %d0 - 92: 6a08 bpls 9c <a0wbs+0x14> - 94: 13fc 0001 0000 moveb #1,0 <a0bs> - 9a: 0000 - 98: R_68K_32 v - 9c: 4e75 rts + 90: 0240 0080 andiw #128,%d0 + 94: 6708 beqs 9e <a0wbs+0x16> + 96: 13fc 0001 0000 moveb #1,0 <a0bs> + 9c: 0000 + 9a: R_68K_32 v + 9e: 4e75 rts -0000009e <a1wbs>: - 9e: 302f 0006 movew %sp@(6),%d0 - a2: d06f 000a addw %sp@(10),%d0 - a6: 4a00 tstb %d0 - a8: 6a08 bpls b2 <a1wbs+0x14> - aa: 13fc 0001 0000 moveb #1,0 <a0bs> - b0: 0000 - ae: R_68K_32 v - b2: 4e75 rts +000000a0 <a1wbs>: + a0: 302f 0006 movew %sp@(6),%d0 + a4: d06f 000a addw %sp@(10),%d0 + a8: 0240 0080 andiw #128,%d0 + ac: 6708 beqs b6 <a1wbs+0x16> + ae: 13fc 0001 0000 moveb #1,0 <a0bs> + b4: 0000 + b2: R_68K_32 v + b6: 4e75 rts -000000b4 <a0w>: - b4: 302f 0006 movew %sp@(6),%d0 - b8: 906f 000a subw %sp@(10),%d0 - bc: 0240 8421 andiw #-31711,%d0 - c0: 6708 beqs ca <a0w+0x16> - c2: 13fc 0001 0000 moveb #1,0 <a0bs> - c8: 0000 - c6: R_68K_32 v - ca: 4e75 rts +000000b8 <a0w>: + b8: 302f 0006 movew %sp@(6),%d0 + bc: 906f 000a subw %sp@(10),%d0 + c0: 0240 8421 andiw #-31711,%d0 + c4: 6708 beqs ce <a0w+0x16> + c6: 13fc 0001 0000 moveb #1,0 <a0bs> + cc: 0000 + ca: R_68K_32 v + ce: 4e75 rts -000000cc <a1w>: - cc: 302f 0006 movew %sp@(6),%d0 - d0: d06f 000a addw %sp@(10),%d0 - d4: 0240 8421 andiw #-31711,%d0 - d8: 6708 beqs e2 <a1w+0x16> - da: 13fc 0001 0000 moveb #1,0 <a0bs> - e0: 0000 - de: R_68K_32 v - e2: 4e75 rts +000000d0 <a1w>: + d0: 302f 0006 movew %sp@(6),%d0 + d4: d06f 000a addw %sp@(10),%d0 + d8: 0240 8421 andiw #-31711,%d0 + dc: 6708 beqs e6 <a1w+0x16> + de: 13fc 0001 0000 moveb #1,0 <a0bs> + e4: 0000 + e2: R_68K_32 v + e6: 4e75 rts Andreas. -- Andreas Schwab, SUSE Labs, sch...@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different."