The x86-32 architecture does have 8 x 32bit general purpose registers. These are EAX, EBX, ECX, EDX, ESI, EDI, ESP and EBP.
But why did it take until the x86-64 architecture for this number to double?
If you look at the 32-bit CPUs from the i386 to the Pentium 4 and the software world, then in the 32-bit era it happened that software no longer supported the older 32-bit CPUs because some feature was used that only the newer CPUs did had. The question therefore arises as to why the number of general purpose registers was not simply increased earlier?
Could it be because Intel wanted to push the Itanium architecture and was therefore not interested in more GPR for the x86 architecture? And if so, why didn't AMD try it on its own before introducing AMD64 in 2003?