New tools:
* mpfr 3.1.4
* binutils 2.26
* gcc 5.3.0
* llvm/clang 3.8.0
Patch changes:
* binutils-2.25_fix-aarch64.patch: fixed in 2.26
* binutils-2.25_host-clang.patch: the positions of header file
  includes have been adjusted
* binutils-2.25_no-bfd-doc.patch: update to 2.26
* binutils-2.25_riscv.patch: update from riscv-gnu-toolchain
* gcc-5.2.0_elf_biarch.patch: update to 5.3.0
* gcc-5.2.0_gnat.patch: update to 5.3.0
* gcc-5.2.0_libgcc.patch: update to 5.3.0
* gcc-5.2.0_nds32.patch: update to 5.3.0
* gcc-5.2.0_riscv.patch: update from riscv-gnu-toolchain
* cfe-3.7.1.src_frontend.patch: update to 3.8.0
In the latest code of riscv-gnu-toolchain project, the patch for
{binutils,gcc}/config.sub has been removed, and the target is renamed
as riscv32 and riscv64. The `riscv' to `riscv64' change in xcompile is
in another commit.
Test results:
All GCC and LLVM/clang toolchain build successfully.
x86,arm: qemu boots
power8: firmware fails to boot
aarch64,mips: not tested
riscv: firmware fails to build with new binutils
clang: firmware fails to boot
Signed-off-by: Iru Cai <mytbk920423@gmail.com>
Change-Id: I42ce89c29263d768d161c28199994f17d0389633
Reviewed-on: https://review.coreboot.org/14227
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
		
	
		
			
				
	
	
		
			58 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| diff -urN gcc-5.2.0.orig/libgcc/config/t-hardfp gcc-5.2.0/libgcc/config/t-hardfp
 | |
| --- gcc-5.2.0.orig/libgcc/config/t-hardfp	2015-01-05 04:33:28.000000000 -0800
 | |
| +++ gcc-5.3.0/libgcc/config/t-hardfp	2016-04-06 12:04:51.000000000 -0700
 | |
| @@ -59,21 +59,52 @@
 | |
|  
 | |
|  hardfp_func_list := $(filter-out $(hardfp_exclusions),$(hardfp_func_list))
 | |
|  
 | |
| +HOST_OS ?= $(shell uname)
 | |
| +
 | |
|  # Regexp for matching a floating-point mode.
 | |
| +ifeq ($(HOST_OS), Darwin)
 | |
| +hardfp_mode_regexp := $(shell echo $(hardfp_float_modes) | sed 's/ /|/g')
 | |
| +else
 | |
| +ifeq ($(HOST_OS), FreeBSD)
 | |
| +hardfp_mode_regexp := $(shell echo $(hardfp_float_modes) | sed 's/ /|/g')
 | |
| +else
 | |
|  hardfp_mode_regexp := $(shell echo $(hardfp_float_modes) | sed 's/ /\\|/g')
 | |
| +endif
 | |
| +endif
 | |
|  
 | |
|  # Regexp for matching the end of a function name, after the last
 | |
|  # floating-point mode.
 | |
| +ifeq ($(HOST_OS), Darwin)
 | |
| +hardfp_suffix_regexp := $(shell echo $(hardfp_int_modes) 2 3 | sed 's/ /|/g')
 | |
| +else
 | |
| +ifeq ($(HOST_OS), FreeBSD)
 | |
| +hardfp_suffix_regexp := $(shell echo $(hardfp_int_modes) 2 3 | sed 's/ /|/g')
 | |
| +else
 | |
|  hardfp_suffix_regexp := $(shell echo $(hardfp_int_modes) 2 3 | sed 's/ /\\|/g')
 | |
| +endif
 | |
| +endif
 | |
|  
 | |
|  # Add -D options to define:
 | |
|  #   FUNC: the function name (e.g. __addsf3)
 | |
|  #   OP:   the function name without the leading __ and with the last
 | |
|  #            floating-point mode removed (e.g. add3)
 | |
|  #   TYPE: the last floating-point mode (e.g. sf)
 | |
| +
 | |
| +ifeq ($(HOST_OS), Darwin)
 | |
|  hardfp_defines_for = \
 | |
|    $(shell echo $1 | \
 | |
| -    sed 's/\(.*\)\($(hardfp_mode_regexp)\)\($(hardfp_suffix_regexp)\|\)$$/-DFUNC=__& -DOP_\1\3 -DTYPE=\2/')
 | |
| +    sed -E 's/(.*)($(hardfp_mode_regexp))($(hardfp_suffix_regexp)|.*)$$/-DFUNC=__& -DOP_\1\3 -DTYPE=\2/')
 | |
| +else
 | |
| +ifeq ($(HOST_OS), FreeBSD)
 | |
| +hardfp_defines_for = \
 | |
| +  $(shell echo $1 | \
 | |
| +    sed -r 's/(.*)($(hardfp_mode_regexp))($(hardfp_suffix_regexp)|.*)$$/-DFUNC=__& -DOP_\1\3 -DTYPE=\2/')
 | |
| +else
 | |
| +hardfp_defines_for = \
 | |
| +  $(shell echo $1 | \
 | |
| +    sed 's/\(.*\)\($(hardfp_mode_regexp)\)\($(hardfp_suffix_regexp)\|\)$$/-DFUNC=__& -DOP_\1\3 -DTYPE=\2/')
 | |
| +endif
 | |
| +endif
 | |
|  
 | |
|  hardfp-o = $(patsubst %,%$(objext),$(hardfp_func_list))
 | |
|  $(hardfp-o): %$(objext): $(srcdir)/config/hardfp.c
 |