On Wed, Nov 13, 2019 at 07:57:58PM +0100, Bernd Schmidt wrote: > On 11/13/19 7:16 PM, Segher Boessenkool wrote: > > I tried this out with a kernel build (just the defconfig). > > > during RTL pass: jump2 > > /home/segher/src/kernel/fs/binfmt_elf.c: In function 'elf_core_dump': > > /home/segher/src/kernel/fs/binfmt_elf.c:2409:1: internal compiler error: in > > patch_jump_insn, at cfgrtl.c:1290 > > > Can you reproduce that? > > Yes. It's actually an issue I spotted at one point, but I thought to > myself "I'll just leave it, I want to make the minimum amount of > changes". Should have thought harder. > > The constraints for comparison patterns in m68k.md allow constants as > the first operand of a comparison. They also use nonimmediate_operand. > Hence, the internal error you saw when something tries to rerecognize > the instruction. > > The following should fix it, but it's only very lightly tested so far. > I'll merge it into patch 2.
It works on the kernel build, at least. No idea if this *runs*, I just built it ;-) Sizes, R0 is trunk, R1 is with your patches: R0 R1 m68k 3720557 3721245 (that is 100.018%, looks great!) Segher