mirror of
https://github.com/clearlinux/graphene.git
synced 2026-08-19 04:07:39 +00:00
347cdab962
A previous change in LibOS started storing fake syscall return address in R14. This broke stack unwinding when the stack contained both LibOS syscall and SGX OCALL, because we had no CFI directives for recovering register values except for RBP, RSP and RIP, and the value of R14 was lost. This change adds proper CFI to enclave exit code, by making sure callee-saved registers can be recovered. Signed-off-by: Paweł Marczewski <pawel@invisiblethingslab.com>