mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-27 01:11:06 +00:00
433a216919
After some research we found that the stack pointer on ARM platforms must be at least double word aligned (See: "Procedure Call Standard for the ARM Architecture" - 5.2.1.1). Since a 'call' on ARM will not result in a stack pointer change (like on x86), the current behavior resulted in a 4 Byte aligned stack only. Follow up to #1043
28 lines
650 B
C++
28 lines
650 B
C++
/*
|
|
* \brief Constants definitions for the ARM architecture.
|
|
* \author Sebastian Sumpf
|
|
* \date 2014-02-20
|
|
*/
|
|
|
|
/*
|
|
* Copyright (C) 2011-2013 Genode Labs GmbH
|
|
*
|
|
* This file is part of the Genode OS framework, which is distributed
|
|
* under the terms of the GNU General Public License version 2.
|
|
*/
|
|
|
|
#ifndef _INCLUDE__ARM__CPU__CONSTS_H_
|
|
#define _INCLUDE__ARM__CPU__CONSTS_H_
|
|
|
|
#include <base/stdint.h>
|
|
|
|
namespace Abi {
|
|
/**
|
|
* On ARM a call (or branch) will not change the stack pointer, so we do not
|
|
* need stack adjustment
|
|
*/
|
|
static constexpr Genode::size_t stack_adjustment() { return 0; }
|
|
}
|
|
|
|
#endif /* _INCLUDE__ARM__CPU__CONSTS_H_ */
|