Well, paradoxical subregs are just a mess:
Agreed, but I wasn't talking about the paradoxical case.
optimizations on paradoxical subregs are better served at the tree
level, because it is just obfuscation of e.g. QImode arithmetic.
Not clear: I think this is a more complex issue.
The biggest and less readable files right now are combine.c, reload.c,
reload1.c. cse.c is big (though not extreme) but unreadable.
Hmm.. I'd consider combine.c quite readable. I agree about reload, of course.
Luckily some GWP people do care about cleaning up. Richard Henderson
did a lot of work on cleaning up RTL things left from olden times
(think eh, nested functions, addressof, save_expr,...), Zack did some
work on this ground in the past as well, Bernd is maybe the only guy
who could pursue something such as reload-brench...
Lots of us care about cleanups. It's actually been one of my priorities
too over the years.