Fix SPSR register size in gp_regs structure

SPSR is a 32-bit register and so its size should be reflected in
the gp_regs structure.  This patch fixes the type of gp_regs.spsr
to use a 32-bit variable.  It also makes the size of the other
register fields more explicit.

Change-Id: I27e0367df1a91cc501d5217c1b3856d4097c60ba
diff --git a/lib/arch/aarch64/misc_helpers.S b/lib/arch/aarch64/misc_helpers.S
index c951d0e..3001a45 100644
--- a/lib/arch/aarch64/misc_helpers.S
+++ b/lib/arch/aarch64/misc_helpers.S
@@ -103,12 +103,12 @@
 	mrs     x0, sp_el0
 	stp	x28, x0, [sp, #GPREGS_X28_OFF]
 	mrs     x0, spsr_el3
-	str	x0, [sp, #GPREGS_SPSR_OFF]
+	str	w0, [sp, #GPREGS_SPSR_OFF]
 	ret
 
 
 restore_regs:; .type restore_regs, %function
-	ldr	x9, [sp, #GPREGS_SPSR_OFF]
+	ldr	w9, [sp, #GPREGS_SPSR_OFF]
 	msr	spsr_el3, x9
 	ldp	x28, x9, [sp, #GPREGS_X28_OFF]
 	msr	sp_el0, x9