mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-18 01:42:24 +02:00
Inline some internal definitions into backend-specific files
This commit is contained in:
parent
04d89a7ce2
commit
ac972e1dba
10 changed files with 74 additions and 71 deletions
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2013-2018 Free Software Foundation, Inc.
|
* Copyright (C) 2013-2019 Free Software Foundation, Inc.
|
||||||
*
|
*
|
||||||
* This file is part of GNU lightning.
|
* This file is part of GNU lightning.
|
||||||
*
|
*
|
||||||
|
@ -17,6 +17,12 @@
|
||||||
* Paulo Cesar Pereira de Andrade
|
* Paulo Cesar Pereira de Andrade
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
# define JIT_RA0 _R0
|
||||||
|
# define JIT_FA0 _V0
|
||||||
|
# define JIT_SP _SP
|
||||||
|
# define JIT_RET _R0
|
||||||
|
# define JIT_FRET _V0
|
||||||
|
|
||||||
#define jit_arg_reg_p(i) ((i) >= 0 && (i) < 8)
|
#define jit_arg_reg_p(i) ((i) >= 0 && (i) < 8)
|
||||||
#define jit_arg_f_reg_p(i) ((i) >= 0 && (i) < 8)
|
#define jit_arg_f_reg_p(i) ((i) >= 0 && (i) < 8)
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2014-2018 Free Software Foundation, Inc.
|
* Copyright (C) 2014-2019 Free Software Foundation, Inc.
|
||||||
*
|
*
|
||||||
* This file is part of GNU lightning.
|
* This file is part of GNU lightning.
|
||||||
*
|
*
|
||||||
|
@ -17,6 +17,10 @@
|
||||||
* Paulo Cesar Pereira de Andrade
|
* Paulo Cesar Pereira de Andrade
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
# define JIT_SP _SP
|
||||||
|
# define JIT_RET _V0
|
||||||
|
# define JIT_FRET _F0
|
||||||
|
|
||||||
#define jit_arg_reg_p(i) ((i) >= 0 && (i) < 6)
|
#define jit_arg_reg_p(i) ((i) >= 0 && (i) < 6)
|
||||||
#define jit_arg_f_reg_p(i) ((i) >= 0 && (i) < 6)
|
#define jit_arg_f_reg_p(i) ((i) >= 0 && (i) < 6)
|
||||||
#if __BYTE_ORDER == __LITTLE_ENDIAN
|
#if __BYTE_ORDER == __LITTLE_ENDIAN
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2012-2018 Free Software Foundation, Inc.
|
* Copyright (C) 2012-2019 Free Software Foundation, Inc.
|
||||||
*
|
*
|
||||||
* This file is part of GNU lightning.
|
* This file is part of GNU lightning.
|
||||||
*
|
*
|
||||||
|
@ -21,6 +21,16 @@
|
||||||
# include <stdio.h>
|
# include <stdio.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
# define JIT_RA0 _R0
|
||||||
|
# define JIT_FA0 _D0
|
||||||
|
# define JIT_SP _R13
|
||||||
|
# define JIT_RET _R0
|
||||||
|
# if defined(__ARM_PCS_VFP)
|
||||||
|
# define JIT_FRET _D0
|
||||||
|
# else
|
||||||
|
# define JIT_FRET _R0
|
||||||
|
# endif
|
||||||
|
|
||||||
#define jit_arg_reg_p(i) ((i) >= 0 && (i) < 4)
|
#define jit_arg_reg_p(i) ((i) >= 0 && (i) < 4)
|
||||||
#define jit_arg_f_reg_p(i) ((i) >= 0 && (i) < 16)
|
#define jit_arg_f_reg_p(i) ((i) >= 0 && (i) < 16)
|
||||||
#define jit_arg_d_reg_p(i) ((i) >= 0 && (i) < 15)
|
#define jit_arg_d_reg_p(i) ((i) >= 0 && (i) < 15)
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2013-2018 Free Software Foundation, Inc.
|
* Copyright (C) 2013-2019 Free Software Foundation, Inc.
|
||||||
*
|
*
|
||||||
* This file is part of GNU lightning.
|
* This file is part of GNU lightning.
|
||||||
*
|
*
|
||||||
|
@ -17,6 +17,10 @@
|
||||||
* Paulo Cesar Pereira de Andrade
|
* Paulo Cesar Pereira de Andrade
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
# define JIT_SP _R30
|
||||||
|
# define JIT_RET _R28
|
||||||
|
# define JIT_FRET _F4
|
||||||
|
|
||||||
#define jit_arg_reg_p(i) (i >= 0 && i < 4)
|
#define jit_arg_reg_p(i) (i >= 0 && i < 4)
|
||||||
|
|
||||||
#define PROTO 1
|
#define PROTO 1
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2013-2018 Free Software Foundation, Inc.
|
* Copyright (C) 2013-2019 Free Software Foundation, Inc.
|
||||||
*
|
*
|
||||||
* This file is part of GNU lightning.
|
* This file is part of GNU lightning.
|
||||||
*
|
*
|
||||||
|
@ -17,6 +17,10 @@
|
||||||
* Paulo Cesar Pereira de Andrade
|
* Paulo Cesar Pereira de Andrade
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
# define JIT_SP _R12
|
||||||
|
# define JIT_RET _R8
|
||||||
|
# define JIT_FRET _F8
|
||||||
|
|
||||||
#define jit_arg_reg_p(i) ((i) >= 0 && (i) < 8)
|
#define jit_arg_reg_p(i) ((i) >= 0 && (i) < 8)
|
||||||
#if __BYTE_ORDER == __LITTLE_ENDIAN
|
#if __BYTE_ORDER == __LITTLE_ENDIAN
|
||||||
# define C_DISP 0
|
# define C_DISP 0
|
||||||
|
|
|
@ -37,69 +37,6 @@
|
||||||
|
|
||||||
#define _NOREG 0xffff
|
#define _NOREG 0xffff
|
||||||
|
|
||||||
#if defined(__i386__) || defined(__x86_64__)
|
|
||||||
# define JIT_RET _RAX
|
|
||||||
# if __X32
|
|
||||||
# define JIT_FRET _ST0
|
|
||||||
# else
|
|
||||||
# if __CYGWIN__
|
|
||||||
# define JIT_RA0 _RCX
|
|
||||||
# else
|
|
||||||
# define JIT_RA0 _RDI
|
|
||||||
# endif
|
|
||||||
# define JIT_FA0 _XMM0
|
|
||||||
# define JIT_FRET _XMM0
|
|
||||||
# endif
|
|
||||||
#elif defined(__mips__)
|
|
||||||
# define JIT_RA0 _A0
|
|
||||||
# define JIT_FA0 _F12
|
|
||||||
# define JIT_SP _SP
|
|
||||||
# define JIT_RET _V0
|
|
||||||
# define JIT_FRET _F0
|
|
||||||
#elif defined(__arm__)
|
|
||||||
# define JIT_RA0 _R0
|
|
||||||
# define JIT_FA0 _D0
|
|
||||||
# define JIT_SP _R13
|
|
||||||
# define JIT_RET _R0
|
|
||||||
# if defined(__ARM_PCS_VFP)
|
|
||||||
# define JIT_FRET _D0
|
|
||||||
# else
|
|
||||||
# define JIT_FRET _R0
|
|
||||||
# endif
|
|
||||||
#elif defined(__ppc__) || defined(__powerpc__)
|
|
||||||
# define JIT_RA0 _R3
|
|
||||||
# define JIT_FA0 _F1
|
|
||||||
# define JIT_SP _R1
|
|
||||||
# define JIT_RET _R3
|
|
||||||
# define JIT_FRET _F1
|
|
||||||
#elif defined(__sparc__)
|
|
||||||
# define JIT_SP _SP
|
|
||||||
# define JIT_RET _I0
|
|
||||||
# define JIT_FRET _F0
|
|
||||||
#elif defined(__ia64__)
|
|
||||||
# define JIT_SP _R12
|
|
||||||
# define JIT_RET _R8
|
|
||||||
# define JIT_FRET _F8
|
|
||||||
#elif defined(__hppa__)
|
|
||||||
# define JIT_SP _R30
|
|
||||||
# define JIT_RET _R28
|
|
||||||
# define JIT_FRET _F4
|
|
||||||
#elif defined(__aarch64__)
|
|
||||||
# define JIT_RA0 _R0
|
|
||||||
# define JIT_FA0 _V0
|
|
||||||
# define JIT_SP _SP
|
|
||||||
# define JIT_RET _R0
|
|
||||||
# define JIT_FRET _V0
|
|
||||||
#elif defined(__s390__) || defined(__s390x__)
|
|
||||||
# define JIT_SP _R15
|
|
||||||
# define JIT_RET _R2
|
|
||||||
# define JIT_FRET _F0
|
|
||||||
#elif defined(__alpha__)
|
|
||||||
# define JIT_SP _SP
|
|
||||||
# define JIT_RET _V0
|
|
||||||
# define JIT_FRET _F0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
union jit_pc
|
union jit_pc
|
||||||
{
|
{
|
||||||
uint8_t *uc;
|
uint8_t *uc;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2012-2018 Free Software Foundation, Inc.
|
* Copyright (C) 2012-2019 Free Software Foundation, Inc.
|
||||||
*
|
*
|
||||||
* This file is part of GNU lightning.
|
* This file is part of GNU lightning.
|
||||||
*
|
*
|
||||||
|
@ -21,6 +21,12 @@
|
||||||
# include <sys/cachectl.h>
|
# include <sys/cachectl.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
# define JIT_RA0 _A0
|
||||||
|
# define JIT_FA0 _F12
|
||||||
|
# define JIT_SP _SP
|
||||||
|
# define JIT_RET _V0
|
||||||
|
# define JIT_FRET _F0
|
||||||
|
|
||||||
#if NEW_ABI
|
#if NEW_ABI
|
||||||
# define NUM_WORD_ARGS 8
|
# define NUM_WORD_ARGS 8
|
||||||
# define STACK_SLOT 8
|
# define STACK_SLOT 8
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2012-2018 Free Software Foundation, Inc.
|
* Copyright (C) 2012-2019 Free Software Foundation, Inc.
|
||||||
*
|
*
|
||||||
* This file is part of GNU lightning.
|
* This file is part of GNU lightning.
|
||||||
*
|
*
|
||||||
|
@ -17,6 +17,12 @@
|
||||||
* Paulo Cesar Pereira de Andrade
|
* Paulo Cesar Pereira de Andrade
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
# define JIT_RA0 _R3
|
||||||
|
# define JIT_FA0 _F1
|
||||||
|
# define JIT_SP _R1
|
||||||
|
# define JIT_RET _R3
|
||||||
|
# define JIT_FRET _F1
|
||||||
|
|
||||||
#define jit_arg_reg_p(i) ((i) >= 0 && (i) < 8)
|
#define jit_arg_reg_p(i) ((i) >= 0 && (i) < 8)
|
||||||
#define jit_arg_f_reg_p(i) ((i) >= 0 && (i) < 13)
|
#define jit_arg_f_reg_p(i) ((i) >= 0 && (i) < 13)
|
||||||
#if __BYTE_ORDER == __LITTLE_ENDIAN
|
#if __BYTE_ORDER == __LITTLE_ENDIAN
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2013-2018 Free Software Foundation, Inc.
|
* Copyright (C) 2013-2019 Free Software Foundation, Inc.
|
||||||
*
|
*
|
||||||
* This file is part of GNU lightning.
|
* This file is part of GNU lightning.
|
||||||
*
|
*
|
||||||
|
@ -17,6 +17,10 @@
|
||||||
* Paulo Cesar Pereira de Andrade
|
* Paulo Cesar Pereira de Andrade
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
# define JIT_SP _R15
|
||||||
|
# define JIT_RET _R2
|
||||||
|
# define JIT_FRET _F0
|
||||||
|
|
||||||
#if __WORDSIZE == 32
|
#if __WORDSIZE == 32
|
||||||
# define NUM_FLOAT_REG_ARGS 2
|
# define NUM_FLOAT_REG_ARGS 2
|
||||||
#else
|
#else
|
||||||
|
|
|
@ -1,3 +1,25 @@
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2013-2019 Free Software Foundation, Inc.
|
||||||
|
*
|
||||||
|
* This file is part of GNU lightning.
|
||||||
|
*
|
||||||
|
* GNU lightning 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 3, or (at your option)
|
||||||
|
* any later version.
|
||||||
|
*
|
||||||
|
* GNU lightning 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.
|
||||||
|
*
|
||||||
|
* Authors:
|
||||||
|
* Paulo Cesar Pereira de Andrade
|
||||||
|
*/
|
||||||
|
|
||||||
|
# define JIT_SP _SP
|
||||||
|
# define JIT_RET _I0
|
||||||
|
# define JIT_FRET _F0
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2013-2018 Free Software Foundation, Inc.
|
* Copyright (C) 2013-2018 Free Software Foundation, Inc.
|
||||||
*
|
*
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue