From 52b4c49f116bb3369b5497e0c01cc38cf3637968 Mon Sep 17 00:00:00 2001 From: peter Date: Sun, 21 Mar 2004 01:39:01 +0000 Subject: [PATCH] Adjust stack alignment so that when the 'call xxx' functions are gathered into the middle of the _init and _fini sections, they get executed with their expected stack alignment. --- lib/csu/amd64/crti.S | 2 ++ lib/csu/amd64/crtn.S | 2 ++ 2 files changed, 4 insertions(+) diff --git a/lib/csu/amd64/crti.S b/lib/csu/amd64/crti.S index b2e99e4088d8..c46f00101916 100644 --- a/lib/csu/amd64/crti.S +++ b/lib/csu/amd64/crti.S @@ -28,12 +28,14 @@ .globl _init .type _init,@function _init: + subq $8,%rsp .section .fini,"ax",@progbits .align 4 .globl _fini .type _fini,@function _fini: + subq $8,%rsp .section .rodata .ascii "$FreeBSD$\0" diff --git a/lib/csu/amd64/crtn.S b/lib/csu/amd64/crtn.S index b2322daa5ee6..d6d09dabeb21 100644 --- a/lib/csu/amd64/crtn.S +++ b/lib/csu/amd64/crtn.S @@ -24,9 +24,11 @@ */ .section .init,"ax",@progbits + addq $8,%rsp ret .section .fini,"ax",@progbits + addq $8,%rsp ret .section .rodata