Update to gcc 8.2.0

develop
sunnycase 2018-10-23 11:34:46 +08:00
parent 97d460d285
commit 9301beee92
14 changed files with 87 additions and 130 deletions

8
.gitmodules vendored
View File

@ -1,12 +1,10 @@
[submodule "riscv-binutils-gdb"]
path = riscv-binutils-gdb
url = git://github.com/riscv/riscv-binutils-gdb.git
url = https://github.com/bminor/binutils-gdb.git
[submodule "riscv-gcc"]
path = riscv-gcc
url = https://github.com/Canaan-Creative/maix-gcc.git
[submodule "riscv-glibc"]
path = riscv-glibc
url = git://github.com/riscv/riscv-glibc.git
[submodule "riscv-newlib"]
path = riscv-newlib
url = git://github.com/riscv/riscv-newlib.git
url = https://github.com/bminor/newlib.git

View File

@ -55,6 +55,7 @@ LINUX_TUPLE ?= $(call make_tuple,$(XLEN),linux-gnu)
NEWLIB_TUPLE ?= $(call make_tuple,$(XLEN),elf)
CFLAGS_FOR_TARGET := $(CFLAGS_FOR_TARGET_EXTRA) @cmodel@
CXXFLAGS_FOR_TARGET := @cmodel@
ASFLAGS_FOR_TARGET := $(ASFLAGS_FOR_TARGET_EXTRA) @cmodel@
# --with-expat is required to enable XML support used by OpenOCD.
BINUTILS_GDB_TARGET_FLAGS := --with-expat=yes $(BINUTILS_GDB_TARGET_FLAGS_EXTRA)
@ -384,7 +385,7 @@ stamps/build-newlib: $(srcdir)/riscv-newlib stamps/build-gcc-newlib-stage1
--enable-newlib-io-long-double \
--enable-newlib-io-long-long \
--enable-newlib-io-c99-formats \
CFLAGS_FOR_TARGET="-Os $(CFLAGS_FOR_TARGET)"
CFLAGS_FOR_TARGET="-Os -ffunction-sections -fdata-sections $(CFLAGS_FOR_TARGET)"
$(MAKE) -C $(notdir $@)
$(MAKE) -C $(notdir $@) install
mkdir -p $(dir $@) && touch $@
@ -458,7 +459,8 @@ stamps/build-gcc-newlib-stage2: $(srcdir)/riscv-gcc stamps/build-newlib \
$(MULTILIB_FLAGS) \
$(WITH_ABI) \
$(WITH_ARCH) \
CFLAGS_FOR_TARGET="-Os $(CFLAGS_FOR_TARGET)"
CFLAGS_FOR_TARGET="-Os -ffunction-sections -fdata-sections $(CFLAGS_FOR_TARGET)" \
CXXFLAGS_FOR_TARGET="-Os -ffunction-sections -fdata-sections $(CXXFLAGS_FOR_TARGET)"
$(MAKE) -C $(notdir $@)
$(MAKE) -C $(notdir $@) install
mkdir -p $(dir $@) && touch $@

View File

@ -1,31 +1,6 @@
#ifndef _XT_CONNMARK_H
#define _XT_CONNMARK_H
#ifndef _XT_CONNMARK_H_target
#define _XT_CONNMARK_H_target
#include <linux/types.h>
#include <linux/netfilter/xt_connmark.h>
/* Copyright (C) 2002,2004 MARA Systems AB <http://www.marasystems.com>
* by Henrik Nordstrom <hno@marasystems.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*/
enum {
XT_CONNMARK_SET = 0,
XT_CONNMARK_SAVE,
XT_CONNMARK_RESTORE
};
struct xt_connmark_tginfo1 {
__u32 ctmark, ctmask, nfmask;
__u8 mode;
};
struct xt_connmark_mtinfo1 {
__u32 mark, mask;
__u8 invert;
};
#endif /*_XT_CONNMARK_H*/
#endif /*_XT_CONNMARK_H_target*/

View File

@ -1,31 +1,26 @@
/* x_tables module for matching the IPv4/IPv6 DSCP field
/* x_tables module for setting the IPv4/IPv6 DSCP field
*
* (C) 2002 Harald Welte <laforge@gnumonks.org>
* based on ipt_FTOS.c (C) 2000 by Matthew G. Marsh <mgm@paktronix.com>
* This software is distributed under GNU GPL v2, 1991
*
* See RFC2474 for a description of the DSCP field within the IP Header.
*
* xt_dscp.h,v 1.3 2002/08/05 19:00:21 laforge Exp
* xt_DSCP.h,v 1.7 2002/03/14 12:03:13 laforge Exp
*/
#ifndef _XT_DSCP_H
#define _XT_DSCP_H
#ifndef _XT_DSCP_TARGET_H
#define _XT_DSCP_TARGET_H
#include <linux/netfilter/xt_dscp.h>
#include <linux/types.h>
#define XT_DSCP_MASK 0xfc /* 11111100 */
#define XT_DSCP_SHIFT 2
#define XT_DSCP_MAX 0x3f /* 00111111 */
/* match info */
struct xt_dscp_info {
/* target info */
struct xt_DSCP_info {
__u8 dscp;
__u8 invert;
};
struct xt_tos_match_info {
__u8 tos_mask;
struct xt_tos_target_info {
__u8 tos_value;
__u8 invert;
__u8 tos_mask;
};
#endif /* _XT_DSCP_H */
#endif /* _XT_DSCP_TARGET_H */

View File

@ -1,15 +1,6 @@
#ifndef _XT_MARK_H
#define _XT_MARK_H
#ifndef _XT_MARK_H_target
#define _XT_MARK_H_target
#include <linux/types.h>
#include <linux/netfilter/xt_mark.h>
struct xt_mark_tginfo2 {
__u32 mark, mask;
};
struct xt_mark_mtinfo1 {
__u32 mark, mask;
__u8 invert;
};
#endif /*_XT_MARK_H*/
#endif /*_XT_MARK_H_target */

View File

@ -1,38 +1,16 @@
#ifndef _XT_RATEEST_MATCH_H
#define _XT_RATEEST_MATCH_H
#ifndef _XT_RATEEST_TARGET_H
#define _XT_RATEEST_TARGET_H
#include <linux/types.h>
#include <linux/if.h>
enum xt_rateest_match_flags {
XT_RATEEST_MATCH_INVERT = 1<<0,
XT_RATEEST_MATCH_ABS = 1<<1,
XT_RATEEST_MATCH_REL = 1<<2,
XT_RATEEST_MATCH_DELTA = 1<<3,
XT_RATEEST_MATCH_BPS = 1<<4,
XT_RATEEST_MATCH_PPS = 1<<5,
};
enum xt_rateest_match_mode {
XT_RATEEST_MATCH_NONE,
XT_RATEEST_MATCH_EQ,
XT_RATEEST_MATCH_LT,
XT_RATEEST_MATCH_GT,
};
struct xt_rateest_match_info {
char name1[IFNAMSIZ];
char name2[IFNAMSIZ];
__u16 flags;
__u16 mode;
__u32 bps1;
__u32 pps1;
__u32 bps2;
__u32 pps2;
struct xt_rateest_target_info {
char name[IFNAMSIZ];
__s8 interval;
__u8 ewma_log;
/* Used internally by the kernel */
struct xt_rateest *est1 __attribute__((aligned(8)));
struct xt_rateest *est2 __attribute__((aligned(8)));
struct xt_rateest *est __attribute__((aligned(8)));
};
#endif /* _XT_RATEEST_MATCH_H */
#endif /* _XT_RATEEST_TARGET_H */

View File

@ -1,11 +1,12 @@
#ifndef _XT_TCPMSS_MATCH_H
#define _XT_TCPMSS_MATCH_H
#ifndef _XT_TCPMSS_H
#define _XT_TCPMSS_H
#include <linux/types.h>
struct xt_tcpmss_match_info {
__u16 mss_min, mss_max;
__u8 invert;
struct xt_tcpmss_info {
__u16 mss;
};
#endif /*_XT_TCPMSS_MATCH_H*/
#define XT_TCPMSS_CLAMP_PMTU 0xffff
#endif /* _XT_TCPMSS_H */

View File

@ -1,15 +1,33 @@
#ifndef _IPT_ECN_H
#define _IPT_ECN_H
/* Header file for iptables ipt_ECN target
*
* (C) 2002 by Harald Welte <laforge@gnumonks.org>
*
* This software is distributed under GNU GPL v2, 1991
*
* ipt_ECN.h,v 1.3 2002/05/29 12:17:40 laforge Exp
*/
#ifndef _IPT_ECN_TARGET_H
#define _IPT_ECN_TARGET_H
#include <linux/netfilter/xt_ecn.h>
#define ipt_ecn_info xt_ecn_info
#include <linux/types.h>
#include <linux/netfilter/xt_DSCP.h>
enum {
IPT_ECN_IP_MASK = XT_ECN_IP_MASK,
IPT_ECN_OP_MATCH_IP = XT_ECN_OP_MATCH_IP,
IPT_ECN_OP_MATCH_ECE = XT_ECN_OP_MATCH_ECE,
IPT_ECN_OP_MATCH_CWR = XT_ECN_OP_MATCH_CWR,
IPT_ECN_OP_MATCH_MASK = XT_ECN_OP_MATCH_MASK,
#define IPT_ECN_IP_MASK (~XT_DSCP_MASK)
#define IPT_ECN_OP_SET_IP 0x01 /* set ECN bits of IPv4 header */
#define IPT_ECN_OP_SET_ECE 0x10 /* set ECE bit of TCP header */
#define IPT_ECN_OP_SET_CWR 0x20 /* set CWR bit of TCP header */
#define IPT_ECN_OP_MASK 0xce
struct ipt_ECN_info {
__u8 operation; /* bitset of operations */
__u8 ip_ect; /* ECT codepoint of IPv4 header, pre-shifted */
union {
struct {
__u8 ece:1, cwr:1; /* TCP ECT bits */
} tcp;
} proto;
};
#endif /* IPT_ECN_H */
#endif /* _IPT_ECN_TARGET_H */

View File

@ -1,5 +1,5 @@
/* IP tables module for matching the value of the TTL
* (C) 2000 by Harald Welte <laforge@gnumonks.org> */
/* TTL modification module for IP tables
* (C) 2000 by Harald Welte <laforge@netfilter.org> */
#ifndef _IPT_TTL_H
#define _IPT_TTL_H
@ -7,14 +7,14 @@
#include <linux/types.h>
enum {
IPT_TTL_EQ = 0, /* equals */
IPT_TTL_NE, /* not equals */
IPT_TTL_LT, /* less than */
IPT_TTL_GT, /* greater than */
IPT_TTL_SET = 0,
IPT_TTL_INC,
IPT_TTL_DEC
};
#define IPT_TTL_MAXMODE IPT_TTL_DEC
struct ipt_ttl_info {
struct ipt_TTL_info {
__u8 mode;
__u8 ttl;
};

View File

@ -1,6 +1,6 @@
/* ip6tables module for matching the Hop Limit value
/* Hop Limit modification module for ip6tables
* Maciej Soltysiak <solt@dns.toxicfilms.tv>
* Based on HW's ttl module */
* Based on HW's TTL module */
#ifndef _IP6T_HL_H
#define _IP6T_HL_H
@ -8,14 +8,14 @@
#include <linux/types.h>
enum {
IP6T_HL_EQ = 0, /* equals */
IP6T_HL_NE, /* not equals */
IP6T_HL_LT, /* less than */
IP6T_HL_GT, /* greater than */
IP6T_HL_SET = 0,
IP6T_HL_INC,
IP6T_HL_DEC
};
#define IP6T_HL_MAXMODE IP6T_HL_DEC
struct ip6t_hl_info {
struct ip6t_HL_info {
__u8 mode;
__u8 hop_limit;
};

@ -1 +1 @@
Subproject commit 68c591179d3c8c1bf425b3a596461cbd3159628c
Subproject commit 00f223631fa9803b783515a2f667f86997e2cdbe

@ -1 +1 @@
Subproject commit 4db5cfc50f400453d5d92d1f34a3b9580bce24e1
Subproject commit 9fb89fa845c1b2e0a18d85ada0b077c84508ab78

@ -1 +0,0 @@
Subproject commit 2f626de717a86be3a1fe39e779f0b179e13ccfbb

@ -1 +1 @@
Subproject commit 0bb64b9508bdbe3e2500a5f5efa5baec20838042
Subproject commit 037428fae327bb25c4421d01b35036f7f1e81a96