enable some soft-fp for ia64, needed for libgcc. re-mknative-gcc.
This commit is contained in:
parent
82748f7304
commit
1e2fcaaf47
|
@ -765,7 +765,7 @@ ia64*-*-linux*)
|
|||
;;
|
||||
ia64*-*-netbsd*)
|
||||
extra_parts="${extra_parts} crtfastmath.o"
|
||||
tmake_file="${tmake_file} ia64/t-ia64 ia64/t-ia64-elf ia64/t-eh-ia64 t-crtfm"
|
||||
tmake_file="${tmake_file} ia64/t-ia64 ia64/t-ia64-elf t-crtfm ia64/t-softfp t-softfp ia64/t-eh-ia64"
|
||||
;;
|
||||
ia64*-*-hpux*)
|
||||
tmake_file="ia64/t-ia64 ia64/t-ia64-elf ia64/t-hpux t-slibgcc ia64/t-slibgcc-hpux t-slibgcc-hpux"
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
# Generated from: NetBSD: mknative.common,v 1.11 2014/02/17 21:39:43 christos Exp
|
||||
#
|
||||
G_INCLUDES=-I. -I. -I../.././gcc -I${GNUHOSTDIST}/libgcc -I${GNUHOSTDIST}/libgcc/. -I${GNUHOSTDIST}/libgcc/../gcc -I${GNUHOSTDIST}/libgcc/../include
|
||||
G_LIB2ADD= enable-execute-stack.c
|
||||
G_LIB2ADD= ${GNUHOSTDIST}/libgcc/config/ia64/tf-signs.c ${GNUHOSTDIST}/libgcc/config/ia64/sfp-exceptions.c enable-execute-stack.c
|
||||
G_LIB2ADDEH=${GNUHOSTDIST}/libgcc/config/ia64/unwind-ia64.c ${GNUHOSTDIST}/libgcc/unwind-sjlj.c ${GNUHOSTDIST}/libgcc/unwind-c.c ${GNUHOSTDIST}/libgcc/emutls.c
|
||||
G_LIB2ADD_ST=
|
||||
G_LIB1ASMFUNCS=__divxf3 __divdf3 __divsf3 __divdi3 __moddi3 __udivdi3 __umoddi3 __divsi3 __modsi3 __udivsi3 __umodsi3 __save_stack_nonlocal __nonlocal_goto __restore_stack_nonlocal __trampoline _fixtfdi _fixunstfdi _floatditf
|
||||
|
|
|
@ -224,7 +224,7 @@
|
|||
#define HAVE_RINDEX 1
|
||||
|
||||
/* Define to 1 if you have the `sbrk' function. */
|
||||
/* #undef HAVE_SBRK */
|
||||
#define HAVE_SBRK 1
|
||||
|
||||
/* Define to 1 if you have the `setenv' function. */
|
||||
#define HAVE_SETENV 1
|
||||
|
|
|
@ -0,0 +1,420 @@
|
|||
/* This file is automatically generated. DO NOT EDIT! */
|
||||
/* Generated from: NetBSD: mknative-gcc,v 1.87 2016/03/17 23:41:21 mrg Exp */
|
||||
/* Generated from: NetBSD: mknative.common,v 1.11 2014/02/17 21:39:43 christos Exp */
|
||||
|
||||
/* Generated automatically from machmode.def and config/ia64/ia64-modes.def
|
||||
by genmodes. */
|
||||
|
||||
#ifndef GCC_INSN_MODES_H
|
||||
#define GCC_INSN_MODES_H
|
||||
|
||||
enum machine_mode
|
||||
{
|
||||
VOIDmode, /* machmode.def:172 */
|
||||
#define HAVE_VOIDmode
|
||||
BLKmode, /* machmode.def:176 */
|
||||
#define HAVE_BLKmode
|
||||
CCmode, /* machmode.def:214 */
|
||||
#define HAVE_CCmode
|
||||
CCImode, /* config/ia64/ia64-modes.def:76 */
|
||||
#define HAVE_CCImode
|
||||
BImode, /* machmode.def:179 */
|
||||
#define HAVE_BImode
|
||||
QImode, /* machmode.def:187 */
|
||||
#define HAVE_QImode
|
||||
HImode, /* machmode.def:188 */
|
||||
#define HAVE_HImode
|
||||
SImode, /* machmode.def:189 */
|
||||
#define HAVE_SImode
|
||||
DImode, /* machmode.def:190 */
|
||||
#define HAVE_DImode
|
||||
TImode, /* machmode.def:191 */
|
||||
#define HAVE_TImode
|
||||
OImode, /* config/ia64/ia64-modes.def:68 */
|
||||
#define HAVE_OImode
|
||||
QQmode, /* machmode.def:217 */
|
||||
#define HAVE_QQmode
|
||||
HQmode, /* machmode.def:218 */
|
||||
#define HAVE_HQmode
|
||||
SQmode, /* machmode.def:219 */
|
||||
#define HAVE_SQmode
|
||||
DQmode, /* machmode.def:220 */
|
||||
#define HAVE_DQmode
|
||||
TQmode, /* machmode.def:221 */
|
||||
#define HAVE_TQmode
|
||||
UQQmode, /* machmode.def:223 */
|
||||
#define HAVE_UQQmode
|
||||
UHQmode, /* machmode.def:224 */
|
||||
#define HAVE_UHQmode
|
||||
USQmode, /* machmode.def:225 */
|
||||
#define HAVE_USQmode
|
||||
UDQmode, /* machmode.def:226 */
|
||||
#define HAVE_UDQmode
|
||||
UTQmode, /* machmode.def:227 */
|
||||
#define HAVE_UTQmode
|
||||
HAmode, /* machmode.def:229 */
|
||||
#define HAVE_HAmode
|
||||
SAmode, /* machmode.def:230 */
|
||||
#define HAVE_SAmode
|
||||
DAmode, /* machmode.def:231 */
|
||||
#define HAVE_DAmode
|
||||
TAmode, /* machmode.def:232 */
|
||||
#define HAVE_TAmode
|
||||
UHAmode, /* machmode.def:234 */
|
||||
#define HAVE_UHAmode
|
||||
USAmode, /* machmode.def:235 */
|
||||
#define HAVE_USAmode
|
||||
UDAmode, /* machmode.def:236 */
|
||||
#define HAVE_UDAmode
|
||||
UTAmode, /* machmode.def:237 */
|
||||
#define HAVE_UTAmode
|
||||
SFmode, /* machmode.def:209 */
|
||||
#define HAVE_SFmode
|
||||
DFmode, /* machmode.def:210 */
|
||||
#define HAVE_DFmode
|
||||
XFmode, /* config/ia64/ia64-modes.def:29 */
|
||||
#define HAVE_XFmode
|
||||
RFmode, /* config/ia64/ia64-modes.def:30 */
|
||||
#define HAVE_RFmode
|
||||
TFmode, /* config/ia64/ia64-modes.def:31 */
|
||||
#define HAVE_TFmode
|
||||
SDmode, /* machmode.def:249 */
|
||||
#define HAVE_SDmode
|
||||
DDmode, /* machmode.def:250 */
|
||||
#define HAVE_DDmode
|
||||
TDmode, /* machmode.def:251 */
|
||||
#define HAVE_TDmode
|
||||
CQImode, /* machmode.def:245 */
|
||||
#define HAVE_CQImode
|
||||
CHImode, /* machmode.def:245 */
|
||||
#define HAVE_CHImode
|
||||
CSImode, /* machmode.def:245 */
|
||||
#define HAVE_CSImode
|
||||
CDImode, /* machmode.def:245 */
|
||||
#define HAVE_CDImode
|
||||
CTImode, /* machmode.def:245 */
|
||||
#define HAVE_CTImode
|
||||
COImode, /* machmode.def:245 */
|
||||
#define HAVE_COImode
|
||||
SCmode, /* machmode.def:246 */
|
||||
#define HAVE_SCmode
|
||||
DCmode, /* machmode.def:246 */
|
||||
#define HAVE_DCmode
|
||||
XCmode, /* machmode.def:246 */
|
||||
#define HAVE_XCmode
|
||||
RCmode, /* machmode.def:246 */
|
||||
#define HAVE_RCmode
|
||||
TCmode, /* machmode.def:246 */
|
||||
#define HAVE_TCmode
|
||||
V4QImode, /* config/ia64/ia64-modes.def:79 */
|
||||
#define HAVE_V4QImode
|
||||
V2HImode, /* config/ia64/ia64-modes.def:79 */
|
||||
#define HAVE_V2HImode
|
||||
V8QImode, /* config/ia64/ia64-modes.def:80 */
|
||||
#define HAVE_V8QImode
|
||||
V4HImode, /* config/ia64/ia64-modes.def:80 */
|
||||
#define HAVE_V4HImode
|
||||
V2SImode, /* config/ia64/ia64-modes.def:80 */
|
||||
#define HAVE_V2SImode
|
||||
V16QImode, /* config/ia64/ia64-modes.def:81 */
|
||||
#define HAVE_V16QImode
|
||||
V8HImode, /* config/ia64/ia64-modes.def:82 */
|
||||
#define HAVE_V8HImode
|
||||
V4SImode, /* config/ia64/ia64-modes.def:83 */
|
||||
#define HAVE_V4SImode
|
||||
V2SFmode, /* config/ia64/ia64-modes.def:84 */
|
||||
#define HAVE_V2SFmode
|
||||
V4SFmode, /* config/ia64/ia64-modes.def:85 */
|
||||
#define HAVE_V4SFmode
|
||||
MAX_MACHINE_MODE,
|
||||
|
||||
MIN_MODE_RANDOM = VOIDmode,
|
||||
MAX_MODE_RANDOM = BLKmode,
|
||||
|
||||
MIN_MODE_CC = CCmode,
|
||||
MAX_MODE_CC = CCImode,
|
||||
|
||||
MIN_MODE_INT = QImode,
|
||||
MAX_MODE_INT = OImode,
|
||||
|
||||
MIN_MODE_PARTIAL_INT = VOIDmode,
|
||||
MAX_MODE_PARTIAL_INT = VOIDmode,
|
||||
|
||||
MIN_MODE_POINTER_BOUNDS = VOIDmode,
|
||||
MAX_MODE_POINTER_BOUNDS = VOIDmode,
|
||||
|
||||
MIN_MODE_FRACT = QQmode,
|
||||
MAX_MODE_FRACT = TQmode,
|
||||
|
||||
MIN_MODE_UFRACT = UQQmode,
|
||||
MAX_MODE_UFRACT = UTQmode,
|
||||
|
||||
MIN_MODE_ACCUM = HAmode,
|
||||
MAX_MODE_ACCUM = TAmode,
|
||||
|
||||
MIN_MODE_UACCUM = UHAmode,
|
||||
MAX_MODE_UACCUM = UTAmode,
|
||||
|
||||
MIN_MODE_FLOAT = SFmode,
|
||||
MAX_MODE_FLOAT = TFmode,
|
||||
|
||||
MIN_MODE_DECIMAL_FLOAT = SDmode,
|
||||
MAX_MODE_DECIMAL_FLOAT = TDmode,
|
||||
|
||||
MIN_MODE_COMPLEX_INT = CQImode,
|
||||
MAX_MODE_COMPLEX_INT = COImode,
|
||||
|
||||
MIN_MODE_COMPLEX_FLOAT = SCmode,
|
||||
MAX_MODE_COMPLEX_FLOAT = TCmode,
|
||||
|
||||
MIN_MODE_VECTOR_INT = V4QImode,
|
||||
MAX_MODE_VECTOR_INT = V4SImode,
|
||||
|
||||
MIN_MODE_VECTOR_FRACT = VOIDmode,
|
||||
MAX_MODE_VECTOR_FRACT = VOIDmode,
|
||||
|
||||
MIN_MODE_VECTOR_UFRACT = VOIDmode,
|
||||
MAX_MODE_VECTOR_UFRACT = VOIDmode,
|
||||
|
||||
MIN_MODE_VECTOR_ACCUM = VOIDmode,
|
||||
MAX_MODE_VECTOR_ACCUM = VOIDmode,
|
||||
|
||||
MIN_MODE_VECTOR_UACCUM = VOIDmode,
|
||||
MAX_MODE_VECTOR_UACCUM = VOIDmode,
|
||||
|
||||
MIN_MODE_VECTOR_FLOAT = V2SFmode,
|
||||
MAX_MODE_VECTOR_FLOAT = V4SFmode,
|
||||
|
||||
NUM_MACHINE_MODES = MAX_MACHINE_MODE
|
||||
};
|
||||
|
||||
#define CONST_MODE_SIZE
|
||||
#define CONST_MODE_BASE_ALIGN
|
||||
#define CONST_MODE_IBIT const
|
||||
#define CONST_MODE_FBIT const
|
||||
|
||||
#define BITS_PER_UNIT (8)
|
||||
#define MAX_BITSIZE_MODE_ANY_INT (32*BITS_PER_UNIT)
|
||||
#define MAX_BITSIZE_MODE_ANY_MODE (64*BITS_PER_UNIT)
|
||||
#define NUM_INT_N_ENTS 1
|
||||
|
||||
#if !defined (USED_FOR_TARGET) && GCC_VERSION >= 4001
|
||||
|
||||
#ifdef __cplusplus
|
||||
inline __attribute__((__always_inline__))
|
||||
#else
|
||||
extern __inline__ __attribute__((__always_inline__, __gnu_inline__))
|
||||
#endif
|
||||
unsigned char
|
||||
mode_size_inline (machine_mode mode)
|
||||
{
|
||||
extern unsigned char mode_size[NUM_MACHINE_MODES];
|
||||
switch (mode)
|
||||
{
|
||||
case VOIDmode: return 0;
|
||||
case BLKmode: return 0;
|
||||
case CCmode: return 4;
|
||||
case CCImode: return 4;
|
||||
case BImode: return 1;
|
||||
case QImode: return 1;
|
||||
case HImode: return 2;
|
||||
case SImode: return 4;
|
||||
case DImode: return 8;
|
||||
case TImode: return 16;
|
||||
case OImode: return 32;
|
||||
case QQmode: return 1;
|
||||
case HQmode: return 2;
|
||||
case SQmode: return 4;
|
||||
case DQmode: return 8;
|
||||
case TQmode: return 16;
|
||||
case UQQmode: return 1;
|
||||
case UHQmode: return 2;
|
||||
case USQmode: return 4;
|
||||
case UDQmode: return 8;
|
||||
case UTQmode: return 16;
|
||||
case HAmode: return 2;
|
||||
case SAmode: return 4;
|
||||
case DAmode: return 8;
|
||||
case TAmode: return 16;
|
||||
case UHAmode: return 2;
|
||||
case USAmode: return 4;
|
||||
case UDAmode: return 8;
|
||||
case UTAmode: return 16;
|
||||
case SFmode: return 4;
|
||||
case DFmode: return 8;
|
||||
case TFmode: return 16;
|
||||
case SDmode: return 4;
|
||||
case DDmode: return 8;
|
||||
case TDmode: return 16;
|
||||
case CQImode: return 2;
|
||||
case CHImode: return 4;
|
||||
case CSImode: return 8;
|
||||
case CDImode: return 16;
|
||||
case CTImode: return 32;
|
||||
case COImode: return 64;
|
||||
case SCmode: return 8;
|
||||
case DCmode: return 16;
|
||||
case TCmode: return 32;
|
||||
case V4QImode: return 4;
|
||||
case V2HImode: return 4;
|
||||
case V8QImode: return 8;
|
||||
case V4HImode: return 8;
|
||||
case V2SImode: return 8;
|
||||
case V16QImode: return 16;
|
||||
case V8HImode: return 16;
|
||||
case V4SImode: return 16;
|
||||
case V2SFmode: return 8;
|
||||
case V4SFmode: return 16;
|
||||
default: return mode_size[mode];
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef __cplusplus
|
||||
inline __attribute__((__always_inline__))
|
||||
#else
|
||||
extern __inline__ __attribute__((__always_inline__, __gnu_inline__))
|
||||
#endif
|
||||
unsigned char
|
||||
mode_nunits_inline (machine_mode mode)
|
||||
{
|
||||
extern const unsigned char mode_nunits[NUM_MACHINE_MODES];
|
||||
switch (mode)
|
||||
{
|
||||
case VOIDmode: return 0;
|
||||
case BLKmode: return 0;
|
||||
case CCmode: return 1;
|
||||
case CCImode: return 1;
|
||||
case BImode: return 1;
|
||||
case QImode: return 1;
|
||||
case HImode: return 1;
|
||||
case SImode: return 1;
|
||||
case DImode: return 1;
|
||||
case TImode: return 1;
|
||||
case OImode: return 1;
|
||||
case QQmode: return 1;
|
||||
case HQmode: return 1;
|
||||
case SQmode: return 1;
|
||||
case DQmode: return 1;
|
||||
case TQmode: return 1;
|
||||
case UQQmode: return 1;
|
||||
case UHQmode: return 1;
|
||||
case USQmode: return 1;
|
||||
case UDQmode: return 1;
|
||||
case UTQmode: return 1;
|
||||
case HAmode: return 1;
|
||||
case SAmode: return 1;
|
||||
case DAmode: return 1;
|
||||
case TAmode: return 1;
|
||||
case UHAmode: return 1;
|
||||
case USAmode: return 1;
|
||||
case UDAmode: return 1;
|
||||
case UTAmode: return 1;
|
||||
case SFmode: return 1;
|
||||
case DFmode: return 1;
|
||||
case XFmode: return 1;
|
||||
case RFmode: return 1;
|
||||
case TFmode: return 1;
|
||||
case SDmode: return 1;
|
||||
case DDmode: return 1;
|
||||
case TDmode: return 1;
|
||||
case CQImode: return 2;
|
||||
case CHImode: return 2;
|
||||
case CSImode: return 2;
|
||||
case CDImode: return 2;
|
||||
case CTImode: return 2;
|
||||
case COImode: return 2;
|
||||
case SCmode: return 2;
|
||||
case DCmode: return 2;
|
||||
case XCmode: return 2;
|
||||
case RCmode: return 2;
|
||||
case TCmode: return 2;
|
||||
case V4QImode: return 4;
|
||||
case V2HImode: return 2;
|
||||
case V8QImode: return 8;
|
||||
case V4HImode: return 4;
|
||||
case V2SImode: return 2;
|
||||
case V16QImode: return 16;
|
||||
case V8HImode: return 8;
|
||||
case V4SImode: return 4;
|
||||
case V2SFmode: return 2;
|
||||
case V4SFmode: return 4;
|
||||
default: return mode_nunits[mode];
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef __cplusplus
|
||||
inline __attribute__((__always_inline__))
|
||||
#else
|
||||
extern __inline__ __attribute__((__always_inline__, __gnu_inline__))
|
||||
#endif
|
||||
unsigned char
|
||||
mode_inner_inline (machine_mode mode)
|
||||
{
|
||||
extern const unsigned char mode_inner[NUM_MACHINE_MODES];
|
||||
switch (mode)
|
||||
{
|
||||
case VOIDmode: return VOIDmode;
|
||||
case BLKmode: return VOIDmode;
|
||||
case CCmode: return VOIDmode;
|
||||
case CCImode: return VOIDmode;
|
||||
case BImode: return VOIDmode;
|
||||
case QImode: return VOIDmode;
|
||||
case HImode: return VOIDmode;
|
||||
case SImode: return VOIDmode;
|
||||
case DImode: return VOIDmode;
|
||||
case TImode: return VOIDmode;
|
||||
case OImode: return VOIDmode;
|
||||
case QQmode: return VOIDmode;
|
||||
case HQmode: return VOIDmode;
|
||||
case SQmode: return VOIDmode;
|
||||
case DQmode: return VOIDmode;
|
||||
case TQmode: return VOIDmode;
|
||||
case UQQmode: return VOIDmode;
|
||||
case UHQmode: return VOIDmode;
|
||||
case USQmode: return VOIDmode;
|
||||
case UDQmode: return VOIDmode;
|
||||
case UTQmode: return VOIDmode;
|
||||
case HAmode: return VOIDmode;
|
||||
case SAmode: return VOIDmode;
|
||||
case DAmode: return VOIDmode;
|
||||
case TAmode: return VOIDmode;
|
||||
case UHAmode: return VOIDmode;
|
||||
case USAmode: return VOIDmode;
|
||||
case UDAmode: return VOIDmode;
|
||||
case UTAmode: return VOIDmode;
|
||||
case SFmode: return VOIDmode;
|
||||
case DFmode: return VOIDmode;
|
||||
case XFmode: return VOIDmode;
|
||||
case RFmode: return VOIDmode;
|
||||
case TFmode: return VOIDmode;
|
||||
case SDmode: return VOIDmode;
|
||||
case DDmode: return VOIDmode;
|
||||
case TDmode: return VOIDmode;
|
||||
case CQImode: return QImode;
|
||||
case CHImode: return HImode;
|
||||
case CSImode: return SImode;
|
||||
case CDImode: return DImode;
|
||||
case CTImode: return TImode;
|
||||
case COImode: return OImode;
|
||||
case SCmode: return SFmode;
|
||||
case DCmode: return DFmode;
|
||||
case XCmode: return XFmode;
|
||||
case RCmode: return RFmode;
|
||||
case TCmode: return TFmode;
|
||||
case V4QImode: return QImode;
|
||||
case V2HImode: return HImode;
|
||||
case V8QImode: return QImode;
|
||||
case V4HImode: return HImode;
|
||||
case V2SImode: return SImode;
|
||||
case V16QImode: return QImode;
|
||||
case V8HImode: return HImode;
|
||||
case V4SImode: return SImode;
|
||||
case V2SFmode: return SFmode;
|
||||
case V4SFmode: return SFmode;
|
||||
default: return mode_inner[mode];
|
||||
}
|
||||
}
|
||||
|
||||
#endif /* GCC_VERSION >= 4001 */
|
||||
|
||||
#endif /* insn-modes.h */
|
Loading…
Reference in New Issue