> > - unsigned int __max_iter = 1000000; > > + unsigned int __max_iter = 65536U; > > Doesn't that need to be 65535U for your purpose?
Yup. The other three did. > Should have the runtime license exception. Added. > This should not be needed; just using t-fdpbit should suffice for > almost all targets. Done. > > \ No newline at end of file > > As already noted, avoid this. Fixed. > > +static int register_sizes[] = > > const? Yup. > There are a lot of functions and variables without comments explaining > them and their parameters. (If a function just implements a standard > hook, a comment identifying which hook suffices without needing to explain > the parameters of that hook again.) I went through and commented everything in rl78.c at least; I think the .h and .md are fairly self-documenting. I put a big comment at the start of the devirtualization functions giving an overview of the real/virtual thing. > > + if (letter == 'q' || letter == 'Q') > > + error ("q/Q modifiers invalid for symbol referencs"); > > "referencs" should be "reference" or "references" or similar. I think > this should call output_operand_lossage not error, so that it becomes an > error or an ICE as appropriate depending on whether the source of the > error is the machine description or an asm. Done. > cross compiler configured with --enable-werror-always, on both 32-bit and > 64-bit hosts if possible. I always build on 64 bit :-) > I think the target-independent changes outside the back end (the ones that > are meant as separate bug fixes required by the port) should be posted in > separate messages, each with its own rationale. Will do.