Module Name:    src
Committed By:   mrg
Date:           Thu Jun 30 09:06:35 UTC 2016

Modified Files:
        src/external/gpl3/gcc/dist/libgcc: config.host
        src/external/gpl3/gcc/lib/libgcc/arch/ia64: defs.mk
        src/external/gpl3/gcc/lib/libiberty/arch/ia64: config.h
Added Files:
        src/external/gpl3/gcc/usr.bin/gcc/arch/ia64: insn-modes.h

Log Message:
enable some soft-fp for ia64, needed for libgcc.  re-mknative-gcc.


To generate a diff of this commit:
cvs rdiff -u -r1.12 -r1.13 src/external/gpl3/gcc/dist/libgcc/config.host
cvs rdiff -u -r1.3 -r1.4 src/external/gpl3/gcc/lib/libgcc/arch/ia64/defs.mk
cvs rdiff -u -r1.4 -r1.5 \
    src/external/gpl3/gcc/lib/libiberty/arch/ia64/config.h
cvs rdiff -u -r0 -r1.1 \
    src/external/gpl3/gcc/usr.bin/gcc/arch/ia64/insn-modes.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/external/gpl3/gcc/dist/libgcc/config.host
diff -u src/external/gpl3/gcc/dist/libgcc/config.host:1.12 src/external/gpl3/gcc/dist/libgcc/config.host:1.13
--- src/external/gpl3/gcc/dist/libgcc/config.host:1.12	Tue Jun  7 06:14:18 2016
+++ src/external/gpl3/gcc/dist/libgcc/config.host	Thu Jun 30 09:06:35 2016
@@ -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"

Index: src/external/gpl3/gcc/lib/libgcc/arch/ia64/defs.mk
diff -u src/external/gpl3/gcc/lib/libgcc/arch/ia64/defs.mk:1.3 src/external/gpl3/gcc/lib/libgcc/arch/ia64/defs.mk:1.4
--- src/external/gpl3/gcc/lib/libgcc/arch/ia64/defs.mk:1.3	Thu Jun 30 01:44:48 2016
+++ src/external/gpl3/gcc/lib/libgcc/arch/ia64/defs.mk	Thu Jun 30 09:06:35 2016
@@ -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

Index: src/external/gpl3/gcc/lib/libiberty/arch/ia64/config.h
diff -u src/external/gpl3/gcc/lib/libiberty/arch/ia64/config.h:1.4 src/external/gpl3/gcc/lib/libiberty/arch/ia64/config.h:1.5
--- src/external/gpl3/gcc/lib/libiberty/arch/ia64/config.h:1.4	Thu Jun 30 01:44:49 2016
+++ src/external/gpl3/gcc/lib/libiberty/arch/ia64/config.h	Thu Jun 30 09:06:35 2016
@@ -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

Added files:

Index: src/external/gpl3/gcc/usr.bin/gcc/arch/ia64/insn-modes.h
diff -u /dev/null src/external/gpl3/gcc/usr.bin/gcc/arch/ia64/insn-modes.h:1.1
--- /dev/null	Thu Jun 30 09:06:35 2016
+++ src/external/gpl3/gcc/usr.bin/gcc/arch/ia64/insn-modes.h	Thu Jun 30 09:06:35 2016
@@ -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 */

Reply via email to