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: __int128 gi; const int c = 0x12345678u; int foo(void) { gi += c; return c; } Ciao Dominik ^_^ ^_^ -- Dominik Vogt IBM Germany