From e64ac02c24b43659048622714afdc92fedf561fa Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Sun, 1 Jul 2012 13:06:41 +0000 Subject: Move all files into ports/ subdirectory in preparation for merge with glibc --- ports/sysdeps/m68k/stackinfo.h | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 ports/sysdeps/m68k/stackinfo.h (limited to 'ports/sysdeps/m68k/stackinfo.h') diff --git a/ports/sysdeps/m68k/stackinfo.h b/ports/sysdeps/m68k/stackinfo.h new file mode 100644 index 0000000..657b8a1 --- /dev/null +++ b/ports/sysdeps/m68k/stackinfo.h @@ -0,0 +1,41 @@ +/* Copyright (C) 1999, 2010, 2011 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library. If not, see + . */ + +/* This file contains a bit of information about the stack allocation + of the processor. */ + +#ifndef _STACKINFO_H +#define _STACKINFO_H 1 + +#include + +/* On m68k the stack grows down. */ +#define _STACK_GROWS_DOWN 1 + +/* Default to an executable stack. PF_X can be overridden if PT_GNU_STACK + is present, but it is presumed absent. */ +#define DEFAULT_STACK_PERMS (PF_R|PF_W|PF_X) + +/* Access to the stack pointer. */ +#define stackinfo_get_sp() \ + ({ void *p__; asm volatile ("move.l %%sp, %0" : "=r" (p__)); p__; }) +#define stackinfo_sub_sp(ptr) \ + ({ ptrdiff_t d__; \ + asm volatile ("sub.l %%sp, %0" : "=r" (d__) : "0" (ptr)); \ + d__; }) + +#endif /* stackinfo.h */ -- cgit v1.1