In GCC 4.9 EBX register is reserved for global offset table (GOT) address [...] In GCC 5.0 EBX is returned to an allocation making all 7 registers available.
But there's no explanation of why we don't need a GOT any more.
Possibly this is "Reuse of the PIC hard register" noted in https://gcc.gnu.org/gcc-5/changes.html ..?