soc/intel/common/block/cpu/car/exit_car: Fix compilation on x86_64
Change-Id: Ieac4a4924ff4684b2a419471cd54e3d3b1f5bbe6
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/48171
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
diff --git a/src/soc/intel/common/block/cpu/car/exit_car.S b/src/soc/intel/common/block/cpu/car/exit_car.S
index 9480a5a..191232a 100644
--- a/src/soc/intel/common/block/cpu/car/exit_car.S
+++ b/src/soc/intel/common/block/cpu/car/exit_car.S
@@ -28,7 +28,11 @@
* Retrieve return address from stack as it will get trashed below if
* execution is utilizing the cache-as-ram stack.
*/
+#if ENV_X86_64
+ pop %rbx
+#else
pop %ebx
+#endif
/* Disable MTRRs. */
mov $(MTRR_DEF_TYPE_MSR), %ecx
@@ -95,4 +99,8 @@
#endif
/* Return to caller. */
+#if ENV_X86_64
+ jmp *%rbx
+#else
jmp *%ebx
+#endif