Dominik Vogt wrote: > On Wed, Dec 16, 2015 at 01:51:45PM +0100, Ulrich Weigand wrote: > > Dominik Vogt wrote: > > > > r2 through r4 should be fine. [ Not sure if there will be many (any?) > > > > cases > > > > where one of those is unused but r5 isn't, however. ] > > > > > > This can happen if the function only uses register pairs > > > (__int128). Actually I'm not sure whether r2 and r4 are valid > > > candidates. > > > > Huh? Why not? > > Because I'm not sure it is possible to write code where r2 (r4) is > free but r3 (r5) is not - at least when s390_emit_prologue is > called. Writing code that uses r4 and r5 but not r3 was diffucult > enough:
Ah, OK. I agree that it will rarely happen (it could in more complex cases where something initially uses r2 but a very late optimization pass manages to eliminate that use). However, when it is *is* free, it is a valid candidate in the sense that it would be safe and correct to use it. Bye, Ulrich -- Dr. Ulrich Weigand GNU/Linux compilers and toolchain ulrich.weig...@de.ibm.com