Browse Source

aarch64: fix setjmp overrun

The assembly code uses fixed offsets into the jmp_buf and leaves an 8 byte
gap between the GPRs and the FPRs, but the jmp_buf structure was not laid
out to account for this so the code would overrun the jmp_buf by 8 bytes.

Found-by: Oskar Engen <oskar.engen@gmail.com>
Signed-off-by: Dwight Engen <dwight.engen@gmail.com>
Dwight Engen 2 years ago
parent
commit
4a566dd746
1 changed files with 1 additions and 0 deletions
  1. 1 0
      inc/aarch64/efisetjmp_arch.h

+ 1 - 0
inc/aarch64/efisetjmp_arch.h

@@ -18,6 +18,7 @@ typedef struct {
 	UINT64	FP;
 	UINT64	LR;
 	UINT64	IP0;
+	UINT64	_pad1;
 
 	/* FP regs */
 	UINT64	D8;