NetBSD/sys/arch/riscv
kamil 847996952c Introduce _UC_MACHINE_FP() as a macro
_UC_MACHINE_FP() is a helper macro to extract from mcontext a frame pointer.

Don't rely on this interface as a compiler might strip frame pointer or
optimize it making this interface unreliable.


For hppa assume a small frame context, for larger frames FP might be located
in a different register (4 instead of 3).

For ia64 there is no strict frame pointer, and registers might rotate.
Reuse 79 following:

  ./gcc/config/ia64/ia64.h:#define HARD_FRAME_POINTER_REGNUM  LOC_REG (79)

Once ia64 will mature, this should be revisited.

A macro can encapsulate a real function for extracting Frame Pointer on
more complex CPUs / ABIs.


For the remaining CPUs, reuse standard register as defined in appropriate ABI.

The direct users of this macro are LLVM and GCC with Sanitizers.

Proposed on tech-userlevel@.

Sponsored by <The NetBSD Foundation>
2018-02-15 15:53:56 +00:00
..
conf Revive commented out DISKLABEL_EI option to kernel configuration files 2017-11-06 02:57:18 +00:00
htif Beginnings of RISCV kernel support. Note that the pmap support is not yet 2015-03-28 16:13:56 +00:00
include Introduce _UC_MACHINE_FP() as a macro 2018-02-15 15:53:56 +00:00
riscv Fix tyop 2018-02-05 10:41:12 +00:00
Makefile