у PDP-11 слишком мало регистров, чтоб через них передавать параметры. Например, в том же i386 так же все через стек сделано. Только в AMD64 изменили ABI, плюс регистров добавили.
Поломать GCC, чтоб передавать параметры через регистры -- можно. Вот только в внутри вызванной функции опять таки будет использоваться стек, чтоб сохранить R0...R4 на стек и уже относительно стека работать со значениями

