1# $NetBSD: genassym.cf,v 1.5 2021/11/23 02:49:55 thorpej Exp $ 2 3#- 4# Copyright (c) 2014 The NetBSD Foundation, Inc. 5# All rights reserved. 6# 7# This code is derived from software contributed to The NetBSD Foundation 8# by Matt Thomas of 3am Software Foundry. 9# 10# Redistribution and use in source and binary forms, with or without 11# modification, are permitted provided that the following conditions 12# are met: 13# 1. Redistributions of source code must retain the above copyright 14# notice, this list of conditions and the following disclaimer. 15# 2. Redistributions in binary form must reproduce the above copyright 16# notice, this list of conditions and the following disclaimer in the 17# documentation and/or other materials provided with the distribution. 18# 19# THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 20# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 21# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 22# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 23# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 24# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 25# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 26# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 27# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 28# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 29# POSSIBILITY OF SUCH DAMAGE. 30# 31 32include <sys/types.h> 33include <ucontext.h> 34include <setjmp.h> 35 36define _UC_GREGS offsetof(ucontext_t, uc_mcontext.__gregs[0]) 37define _UC_REGS_X0 offsetof(ucontext_t, uc_mcontext.__gregs[_REG_X0]) 38define _UC_REGS_SP offsetof(ucontext_t, uc_mcontext.__gregs[_REG_SP]) 39define _UC_REGS_PC offsetof(ucontext_t, uc_mcontext.__gregs[_REG_PC]) 40 41define _REG_X0 _REG_X0 42define _REG_X1 _REG_X1 43define _REG_X2 _REG_X2 44define _REG_X3 _REG_X3 45define _REG_X4 _REG_X4 46define _REG_X5 _REG_X5 47define _REG_X6 _REG_X6 48define _REG_X7 _REG_X7 49define _REG_X8 _REG_X8 50define _REG_X9 _REG_X9 51define _REG_X10 _REG_X10 52define _REG_X11 _REG_X11 53define _REG_X12 _REG_X12 54define _REG_X13 _REG_X13 55define _REG_X14 _REG_X14 56define _REG_X15 _REG_X15 57define _REG_X16 _REG_X16 58define _REG_X17 _REG_X17 59define _REG_X18 _REG_X18 60define _REG_X19 _REG_X19 61define _REG_X20 _REG_X20 62define _REG_X21 _REG_X21 63define _REG_X22 _REG_X22 64define _REG_X23 _REG_X23 65define _REG_X24 _REG_X24 66define _REG_X25 _REG_X25 67define _REG_X26 _REG_X26 68define _REG_X27 _REG_X27 69define _REG_X28 _REG_X28 70define _REG_X29 _REG_X29 71define _REG_X30 _REG_X30 72define _REG_X31 _REG_X31 73define _REG_PC _REG_PC 74 75define _JB_MAGIC_AARCH64__SETJMP _JB_MAGIC_AARCH64__SETJMP 76define _JB_MAGIC_AARCH64_SETJMP _JB_MAGIC_AARCH64_SETJMP 77define _JB_MAGIC sizeof(_BSD_JBSLOT_T_ [_JB_MAGIC]) 78define _JB_SP sizeof(_BSD_JBSLOT_T_ [_JB_SP]) 79define _JB_X19 sizeof(_BSD_JBSLOT_T_ [_JB_X19]) 80define _JB_X20 sizeof(_BSD_JBSLOT_T_ [_JB_X20]) 81define _JB_X21 sizeof(_BSD_JBSLOT_T_ [_JB_X21]) 82define _JB_X22 sizeof(_BSD_JBSLOT_T_ [_JB_X22]) 83define _JB_X23 sizeof(_BSD_JBSLOT_T_ [_JB_X23]) 84define _JB_X24 sizeof(_BSD_JBSLOT_T_ [_JB_X24]) 85define _JB_X25 sizeof(_BSD_JBSLOT_T_ [_JB_X25]) 86define _JB_X26 sizeof(_BSD_JBSLOT_T_ [_JB_X26]) 87define _JB_X27 sizeof(_BSD_JBSLOT_T_ [_JB_X27]) 88define _JB_X28 sizeof(_BSD_JBSLOT_T_ [_JB_X29]) 89define _JB_X29 sizeof(_BSD_JBSLOT_T_ [_JB_X29]) 90define _JB_X30 sizeof(_BSD_JBSLOT_T_ [_JB_X30]) 91define _JB_D8 sizeof(_BSD_JBSLOT_T_ [_JB_D8]) 92define _JB_D9 sizeof(_BSD_JBSLOT_T_ [_JB_D9]) 93define _JB_D10 sizeof(_BSD_JBSLOT_T_ [_JB_D10]) 94define _JB_D11 sizeof(_BSD_JBSLOT_T_ [_JB_D11]) 95define _JB_D12 sizeof(_BSD_JBSLOT_T_ [_JB_D12]) 96define _JB_D13 sizeof(_BSD_JBSLOT_T_ [_JB_D13]) 97define _JB_D14 sizeof(_BSD_JBSLOT_T_ [_JB_D14]) 98define _JB_D15 sizeof(_BSD_JBSLOT_T_ [_JB_D15]) 99define _JB_SIGMASK sizeof(_BSD_JBSLOT_T_ [_JB_SIGMASK]) 100