summaryrefslogtreecommitdiff
path: root/3rdparty
diff options
context:
space:
mode:
authorIru Cai <mytbk920423@gmail.com>2021-06-29 21:16:26 +0800
committerPatrick Georgi <pgeorgi@google.com>2021-07-07 14:54:56 +0000
commit88eb16786872404c9279ac6b0decbd98dac7ca8d (patch)
tree00254cb216ff13594d90e164a58ee4cf1001afdf /3rdparty
parentd109354c0f1d4b155c60701cd42e632213350d72 (diff)
arch/x86: Save resume vector to stack in x86_64 mode
In x86_64, the first function parameter is passed in rdi register, and the 32-bit code after exiting long mode reads the resume vector in 4(%esp), so it's needed to save the resume vector from rdi to 4(%rsp). Also note that the function attribute "regparm" only works on x86-32 targets according to the GCC manual, so "asmlinkage" doesn't change the ABI of an x86_64 function. Tested on HP EliteBook 2560p. The laptop can resume from S3 in x86_64 mode after this change. Change-Id: I45f2678071b2511c0af5dce9d9b73ac70dfd7252 Signed-off-by: Iru Cai <mytbk920423@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/55947 Reviewed-by: Arthur Heymans <arthur@aheymans.xyz> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to '3rdparty')
0 files changed, 0 insertions, 0 deletions