4e38a7aca1
with the exception of indirect function calls, are assumed to be intra load module and thus that GP will be the same. This avoids saving, setting and restoring GP for each function call and reduces the kernel with ~320KB. There's obviously a performance benefit as well. Note that since we generally don't know if calls will be intra or inter load module when we're compiling kernel modules, -mconstant-gp cannot be used for modules.