diff options
-rw-r--r-- | .SRCINFO | 6 | ||||
-rw-r--r-- | PKGBUILD | 12 | ||||
-rw-r--r-- | fix-insn-delay_cycles_32x.patch | 21 |
3 files changed, 34 insertions, 5 deletions
@@ -1,9 +1,9 @@ # Generated by mksrcinfo v8 -# Sat Aug 27 22:12:45 UTC 2016 +# Mon Sep 12 21:01:35 UTC 2016 pkgbase = msp430-elf-gcc-stage1 pkgdesc = The GNU Compiler Collection bootstrap for the msp430-elf target. pkgver = 6.2.0 - pkgrel = 1 + pkgrel = 2 url = http://gcc.gnu.org arch = i686 arch = x86_64 @@ -21,8 +21,10 @@ pkgbase = msp430-elf-gcc-stage1 options = !strip source = ftp://gcc.gnu.org/pub/gcc/releases/gcc-6.2.0/gcc-6.2.0.tar.bz2 source = http://isl.gforge.inria.fr/isl-0.17.tar.bz2 + source = fix-insn-delay_cycles_32x.patch sha256sums = 9944589fc722d3e66308c0ce5257788ebd7872982a718aa2516123940671b7c5 sha256sums = 439b322f313aef562302ac162caccb0b90daedf88d49d62e00a5db6b9d83d6bb + sha256sums = 0cd87771d1fd8ec5d0c413ae8c18b9b2599f2c66a0fa8b5fd4aa2f01ac1b5f86 pkgname = msp430-elf-gcc-stage1 @@ -4,7 +4,7 @@ _target="msp430-elf" pkgname=${_target}-gcc-stage1 pkgver=6.2.0 _islver=0.17 -pkgrel=1 +pkgrel=2 pkgdesc="The GNU Compiler Collection bootstrap for the ${_target} target." arch=(i686 x86_64) license=('GPL' 'LGPL') @@ -12,9 +12,11 @@ url="http://gcc.gnu.org" depends=("${_target}-binutils>=2.25" 'libmpc' 'elfutils') options=('staticlibs' '!buildflags' '!libtool' '!emptydirs' 'zipman' 'docs' '!strip') source=(ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2 - http://isl.gforge.inria.fr/isl-${_islver}.tar.bz2) + http://isl.gforge.inria.fr/isl-${_islver}.tar.bz2 + fix-insn-delay_cycles_32x.patch) sha256sums=('9944589fc722d3e66308c0ce5257788ebd7872982a718aa2516123940671b7c5' - '439b322f313aef562302ac162caccb0b90daedf88d49d62e00a5db6b9d83d6bb') + '439b322f313aef562302ac162caccb0b90daedf88d49d62e00a5db6b9d83d6bb' + '0cd87771d1fd8ec5d0c413ae8c18b9b2599f2c66a0fa8b5fd4aa2f01ac1b5f86') prepare() { # add isl into tree @@ -22,6 +24,10 @@ prepare() { [[ -L isl ]] && rm -f isl ln -s ../isl-${_islver} isl + # fix for: + # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77570 + patch -p1 < ../fix-insn-delay_cycles_32x.patch + # clean build directory [[ -d gcc-build ]] && rm -rf gcc-build mkdir gcc-build diff --git a/fix-insn-delay_cycles_32x.patch b/fix-insn-delay_cycles_32x.patch new file mode 100644 index 000000000000..4da202bc57ed --- /dev/null +++ b/fix-insn-delay_cycles_32x.patch @@ -0,0 +1,21 @@ +diff -rupN gcc-6.2.0-pristine/gcc/config/msp430/msp430.md gcc-6.2.0-changed/gcc/config/msp430/msp430.md +--- gcc-6.2.0-pristine/gcc/config/msp430/msp430.md 2016-02-11 18:53:54.000000000 -0500 ++++ gcc-6.2.0-changed/gcc/config/msp430/msp430.md 2016-09-12 16:42:58.843149306 -0400 +@@ -1442,7 +1442,7 @@ + (match_operand 1 "immediate_operand" "i") + ] UNS_DELAY_32X)] + "" +- "PUSHM.A #2,r13 ++ "PUSHM.A #2,r14 + MOV.W %A0, r13 + MOV.W %B0, r14 + 1: SUB.W #1, r13 +@@ -1450,7 +1450,7 @@ + JNE 1b + TST.W r13 + JNE 1b +- POPM.A #2,r13" ++ POPM.A #2,r14" + ) + + (define_insn "delay_cycles_16" |