Re: [OE-core] [thud][PATCH v2] gcc: CVE fix for gcc
On 9/16/19 10:31 PM, mikko.rap...@bmw.de wrote: > On Mon, Sep 16, 2019 at 08:37:28PM +, Muminul Islam wrote: >> Signed-off-by: Muminul Islam >> --- >> meta/recipes-devtools/gcc/gcc-8.2.inc | 2 + >> .../gcc/gcc/0042-CVE-2019-15847_1.patch | 570 >> .../gcc/gcc/0043-CVE-2019-15847_2.patch | 640 ++ >> 3 files changed, 1212 insertions(+) >> create mode 100644 meta/recipes-devtools/gcc/gcc/0042-CVE-2019-15847_1.patch >> create mode 100644 meta/recipes-devtools/gcc/gcc/0043-CVE-2019-15847_2.patch >> >> diff --git a/meta/recipes-devtools/gcc/gcc-8.2.inc >> b/meta/recipes-devtools/gcc/gcc-8.2.inc >> index 866a77558b..cab494989e 100644 >> --- a/meta/recipes-devtools/gcc/gcc-8.2.inc >> +++ b/meta/recipes-devtools/gcc/gcc-8.2.inc >> @@ -70,6 +70,8 @@ SRC_URI = "\ >> file://0039-Fix-for-testsuite-failure.patch \ >> file://0040-Re-introduce-spe-commandline-options.patch \ >> file://0041-ARC-fix-spec-gen.patch \ >> + file://0042-CVE-2019-15847_1.patch \ >> + file://0043-CVE-2019-15847_2.patch \ >> ${BACKPORTS} \ >> " >> BACKPORTS = "\ >> diff --git a/meta/recipes-devtools/gcc/gcc/0042-CVE-2019-15847_1.patch >> b/meta/recipes-devtools/gcc/gcc/0042-CVE-2019-15847_1.patch >> new file mode 100644 >> index 00..edebf2fb41 >> --- /dev/null >> +++ b/meta/recipes-devtools/gcc/gcc/0042-CVE-2019-15847_1.patch >> @@ -0,0 +1,570 @@ >> +From 3efdb8c4afcbc5e07d33b05ab8c2bf88f42f4890 Mon Sep 17 00:00:00 2001 >> +From: segher >> +Date: Thu, 22 Aug 2019 19:36:21 + >> +Subject: [PATCH] rs6000: Use unspec_volatile for darn (PR91481) >> +Reply-To: muis...@microsoft.com >> + >> +Every call to darn should deliver a *new* random number; such calls >> +should not be CSEd together. So they should be unspec_volatile, not >> +plain unspec. >> + >> +PR target/91481 >> +* config/rs6000/rs6000.md (unspec): Delete UNSPEC_DARN, UNSPEC_DARN_32, >> +and UNSPEC_DARN_RAW. >> +(unspecv): New enumerator values UNSPECV_DARN, UNSPECV_DARN_32, and >> +UNSPECV_DARN_RAW. >> +(darn_32): Use an unspec_volatile, and UNSPECV_DARN_32. >> +(darn_raw): Use an unspec_volatile, and UNSPECV_DARN_RAW. >> +(darn): Use an unspec_volatile, and UNSPECV_DARN. >> + >> +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@274835 >> 138bc75d-0d04-0410-961f-82ee72b054a4 >> +Signed-off-by: Muminul Islam >> + >> +CVE: CVE-2019-15847 >> +Upstream-Status: Backport >> +--- >> + gcc/ChangeLog | 336 +++- >> + gcc/config/rs6000/rs6000.md | 169 +- >> + 2 files changed, 503 insertions(+), 2 deletions(-) >> + >> +diff --git a/gcc/ChangeLog b/gcc/ChangeLog >> +index b93dae5dfb0..dc22d7e43b7 100644 >> +--- a/gcc/ChangeLog >> b/gcc/ChangeLog > This changelog is not correct for only fixing PR 91481. > > Because every upstream commit basically adds to the changelog and makes > all cherry-picks and backports fail, I would be fine in omitting > any changes to it in patches like this. I agree, We have done this with other toolchain backports. - armin > > -Mikko > >> +@@ -1,4 +1,338 @@ >> +-2018-07-26 Release Manager >> ++2019-08-22 Segher Boessenkool >> ++ >> ++ PR target/91481 >> ++ * config/rs6000/rs6000.md (unspec): Delete UNSPEC_DARN, UNSPEC_DARN_32, >> ++ and UNSPEC_DARN_RAW. >> ++ (unspecv): New enumerator values UNSPECV_DARN, UNSPECV_DARN_32, and >> ++ UNSPECV_DARN_RAW. >> ++ (darn_32): Use an unspec_volatile, and UNSPECV_DARN_32. >> ++ (darn_raw): Use an unspec_volatile, and UNSPECV_DARN_RAW. >> ++ (darn): Use an unspec_volatile, and UNSPECV_DARN. >> ++ >> ++2019-08-22 Segher Boessenkool >> ++ >> ++ * config/rs6000/altivec.md (unspec): Delete UNSPEC_DARN, UNSPEC_DARN_32, >> ++ UNSPEC_DARN_RAW, UNSPEC_CMPRB, UNSPEC_CMPRB2, UNSPEC_CMPEQB; move to... >> ++ * config/rs6000/rs6000.md (unspec): ... here. >> ++ * config/rs6000/altivec.md (darn_32, darn_raw, darn, cmprb, >> ++ *cmprb_internal, setb_signed, setb_unsigned, cmprb2, *cmprb2_internal, >> ++ cmpeqb, *cmpeqb_internal): Delete, move to... >> ++ * config/rs6000/rs6000.md (darn_32, darn_raw, darn, cmprb, >> ++ *cmprb_internal, setb_signed, setb_unsigned, cmprb2, *cmprb2_internal, >> ++ cmpeqb, *cmpeqb_internal): ... here. >> ++ >> ++2019-08-22 Kyrylo Tkachov >> ++ >> ++ * config/arm/arm_acle.h: Use arch=armv8-a+crc+simd pragma for CRC32 >> ++ intrinsics if __ARM_FP. >> ++ Use __ARM_FEATURE_CRC32 ifdef guard. >> ++ >> ++2019-08-22 Wilco Dijkstra >> ++ >> ++ * config/arm/arm.md (neon_for_64bits): Remove. >> ++ (avoid_neon_for_64bits): Remove. >> ++ (arm_adddi3): Always split early. >> ++ (arm_subdi3): Always split early. >> ++ (negdi2): Remove Neon expansion. >> ++ (split zero_extend): Split before reload. >> ++ (split sign_extend): Split before reload. >> ++ >> ++2019-08-22 Wilco Dijkstra >> ++ >> ++ * config/arm/iterators.md
Re: [OE-core] [thud][PATCH v2] gcc: CVE fix for gcc
On 9/16/19 1:37 PM, Muminul Islam wrote: > Signed-off-by: Muminul Islam > --- > meta/recipes-devtools/gcc/gcc-8.2.inc | 2 + > .../gcc/gcc/0042-CVE-2019-15847_1.patch | 570 > .../gcc/gcc/0043-CVE-2019-15847_2.patch | 640 ++ > 3 files changed, 1212 insertions(+) > create mode 100644 meta/recipes-devtools/gcc/gcc/0042-CVE-2019-15847_1.patch > create mode 100644 meta/recipes-devtools/gcc/gcc/0043-CVE-2019-15847_2.patch > > diff --git a/meta/recipes-devtools/gcc/gcc-8.2.inc > b/meta/recipes-devtools/gcc/gcc-8.2.inc > index 866a77558b..cab494989e 100644 > --- a/meta/recipes-devtools/gcc/gcc-8.2.inc > +++ b/meta/recipes-devtools/gcc/gcc-8.2.inc > @@ -70,6 +70,8 @@ SRC_URI = "\ > file://0039-Fix-for-testsuite-failure.patch \ > file://0040-Re-introduce-spe-commandline-options.patch \ > file://0041-ARC-fix-spec-gen.patch \ > + file://0042-CVE-2019-15847_1.patch \ This patch appears to include the same info twice. The change logs include information not present in this patch series. can you double check. - armin > + file://0043-CVE-2019-15847_2.patch \ > ${BACKPORTS} \ > " > BACKPORTS = "\ > diff --git a/meta/recipes-devtools/gcc/gcc/0042-CVE-2019-15847_1.patch > b/meta/recipes-devtools/gcc/gcc/0042-CVE-2019-15847_1.patch > new file mode 100644 > index 00..edebf2fb41 > --- /dev/null > +++ b/meta/recipes-devtools/gcc/gcc/0042-CVE-2019-15847_1.patch > @@ -0,0 +1,570 @@ > +From 3efdb8c4afcbc5e07d33b05ab8c2bf88f42f4890 Mon Sep 17 00:00:00 2001 > +From: segher > +Date: Thu, 22 Aug 2019 19:36:21 + > +Subject: [PATCH] rs6000: Use unspec_volatile for darn (PR91481) > +Reply-To: muis...@microsoft.com > + > +Every call to darn should deliver a *new* random number; such calls > +should not be CSEd together. So they should be unspec_volatile, not > +plain unspec. > + > + PR target/91481 > + * config/rs6000/rs6000.md (unspec): Delete UNSPEC_DARN, UNSPEC_DARN_32, > + and UNSPEC_DARN_RAW. > + (unspecv): New enumerator values UNSPECV_DARN, UNSPECV_DARN_32, and > + UNSPECV_DARN_RAW. > + (darn_32): Use an unspec_volatile, and UNSPECV_DARN_32. > + (darn_raw): Use an unspec_volatile, and UNSPECV_DARN_RAW. > + (darn): Use an unspec_volatile, and UNSPECV_DARN. > + > +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@274835 > 138bc75d-0d04-0410-961f-82ee72b054a4 > +Signed-off-by: Muminul Islam > + > +CVE: CVE-2019-15847 > +Upstream-Status: Backport > +--- > + gcc/ChangeLog | 336 +++- > + gcc/config/rs6000/rs6000.md | 169 +- > + 2 files changed, 503 insertions(+), 2 deletions(-) > + > +diff --git a/gcc/ChangeLog b/gcc/ChangeLog > +index b93dae5dfb0..dc22d7e43b7 100644 > +--- a/gcc/ChangeLog > b/gcc/ChangeLog > +@@ -1,4 +1,338 @@ > +-2018-07-26 Release Manager > ++2019-08-22 Segher Boessenkool > ++ > ++PR target/91481 > ++* config/rs6000/rs6000.md (unspec): Delete UNSPEC_DARN, UNSPEC_DARN_32, > ++and UNSPEC_DARN_RAW. > ++(unspecv): New enumerator values UNSPECV_DARN, UNSPECV_DARN_32, and > ++UNSPECV_DARN_RAW. > ++(darn_32): Use an unspec_volatile, and UNSPECV_DARN_32. > ++(darn_raw): Use an unspec_volatile, and UNSPECV_DARN_RAW. > ++(darn): Use an unspec_volatile, and UNSPECV_DARN. > ++ > ++2019-08-22 Segher Boessenkool > ++ > ++* config/rs6000/altivec.md (unspec): Delete UNSPEC_DARN, UNSPEC_DARN_32, > ++UNSPEC_DARN_RAW, UNSPEC_CMPRB, UNSPEC_CMPRB2, UNSPEC_CMPEQB; move to... > ++* config/rs6000/rs6000.md (unspec): ... here. > ++* config/rs6000/altivec.md (darn_32, darn_raw, darn, cmprb, > ++*cmprb_internal, setb_signed, setb_unsigned, cmprb2, *cmprb2_internal, > ++cmpeqb, *cmpeqb_internal): Delete, move to... > ++* config/rs6000/rs6000.md (darn_32, darn_raw, darn, cmprb, > ++*cmprb_internal, setb_signed, setb_unsigned, cmprb2, *cmprb2_internal, > ++cmpeqb, *cmpeqb_internal): ... here. > ++ > ++2019-08-22 Kyrylo Tkachov > ++ > ++* config/arm/arm_acle.h: Use arch=armv8-a+crc+simd pragma for CRC32 > ++intrinsics if __ARM_FP. > ++Use __ARM_FEATURE_CRC32 ifdef guard. > ++ > ++2019-08-22 Wilco Dijkstra > ++ > ++* config/arm/arm.md (neon_for_64bits): Remove. > ++(avoid_neon_for_64bits): Remove. > ++(arm_adddi3): Always split early. > ++(arm_subdi3): Always split early. > ++(negdi2): Remove Neon expansion. > ++(split zero_extend): Split before reload. > ++(split sign_extend): Split before reload. > ++ > ++2019-08-22 Wilco Dijkstra > ++ > ++* config/arm/iterators.md (qhs_extenddi_cstr): Update. > ++(qhs_extenddi_cstr): Likewise. > ++* config/arm/arm.md (ashldi3): Always expand early. > ++(ashlsi3): Likewise. > ++(ashrsi3): Likewise. > ++(zero_extenddi2): Remove Neon variants. > ++(extenddi2): Likewise. > ++* config/arm/neon.md
Re: [OE-core] [thud][PATCH v2] gcc: CVE fix for gcc
On Mon, Sep 16, 2019 at 08:37:28PM +, Muminul Islam wrote: > Signed-off-by: Muminul Islam > --- > meta/recipes-devtools/gcc/gcc-8.2.inc | 2 + > .../gcc/gcc/0042-CVE-2019-15847_1.patch | 570 > .../gcc/gcc/0043-CVE-2019-15847_2.patch | 640 ++ > 3 files changed, 1212 insertions(+) > create mode 100644 meta/recipes-devtools/gcc/gcc/0042-CVE-2019-15847_1.patch > create mode 100644 meta/recipes-devtools/gcc/gcc/0043-CVE-2019-15847_2.patch > > diff --git a/meta/recipes-devtools/gcc/gcc-8.2.inc > b/meta/recipes-devtools/gcc/gcc-8.2.inc > index 866a77558b..cab494989e 100644 > --- a/meta/recipes-devtools/gcc/gcc-8.2.inc > +++ b/meta/recipes-devtools/gcc/gcc-8.2.inc > @@ -70,6 +70,8 @@ SRC_URI = "\ > file://0039-Fix-for-testsuite-failure.patch \ > file://0040-Re-introduce-spe-commandline-options.patch \ > file://0041-ARC-fix-spec-gen.patch \ > + file://0042-CVE-2019-15847_1.patch \ > + file://0043-CVE-2019-15847_2.patch \ > ${BACKPORTS} \ > " > BACKPORTS = "\ > diff --git a/meta/recipes-devtools/gcc/gcc/0042-CVE-2019-15847_1.patch > b/meta/recipes-devtools/gcc/gcc/0042-CVE-2019-15847_1.patch > new file mode 100644 > index 00..edebf2fb41 > --- /dev/null > +++ b/meta/recipes-devtools/gcc/gcc/0042-CVE-2019-15847_1.patch > @@ -0,0 +1,570 @@ > +From 3efdb8c4afcbc5e07d33b05ab8c2bf88f42f4890 Mon Sep 17 00:00:00 2001 > +From: segher > +Date: Thu, 22 Aug 2019 19:36:21 + > +Subject: [PATCH] rs6000: Use unspec_volatile for darn (PR91481) > +Reply-To: muis...@microsoft.com > + > +Every call to darn should deliver a *new* random number; such calls > +should not be CSEd together. So they should be unspec_volatile, not > +plain unspec. > + > + PR target/91481 > + * config/rs6000/rs6000.md (unspec): Delete UNSPEC_DARN, UNSPEC_DARN_32, > + and UNSPEC_DARN_RAW. > + (unspecv): New enumerator values UNSPECV_DARN, UNSPECV_DARN_32, and > + UNSPECV_DARN_RAW. > + (darn_32): Use an unspec_volatile, and UNSPECV_DARN_32. > + (darn_raw): Use an unspec_volatile, and UNSPECV_DARN_RAW. > + (darn): Use an unspec_volatile, and UNSPECV_DARN. > + > +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@274835 > 138bc75d-0d04-0410-961f-82ee72b054a4 > +Signed-off-by: Muminul Islam > + > +CVE: CVE-2019-15847 > +Upstream-Status: Backport > +--- > + gcc/ChangeLog | 336 +++- > + gcc/config/rs6000/rs6000.md | 169 +- > + 2 files changed, 503 insertions(+), 2 deletions(-) > + > +diff --git a/gcc/ChangeLog b/gcc/ChangeLog > +index b93dae5dfb0..dc22d7e43b7 100644 > +--- a/gcc/ChangeLog > b/gcc/ChangeLog This changelog is not correct for only fixing PR 91481. Because every upstream commit basically adds to the changelog and makes all cherry-picks and backports fail, I would be fine in omitting any changes to it in patches like this. -Mikko > +@@ -1,4 +1,338 @@ > +-2018-07-26 Release Manager > ++2019-08-22 Segher Boessenkool > ++ > ++PR target/91481 > ++* config/rs6000/rs6000.md (unspec): Delete UNSPEC_DARN, UNSPEC_DARN_32, > ++and UNSPEC_DARN_RAW. > ++(unspecv): New enumerator values UNSPECV_DARN, UNSPECV_DARN_32, and > ++UNSPECV_DARN_RAW. > ++(darn_32): Use an unspec_volatile, and UNSPECV_DARN_32. > ++(darn_raw): Use an unspec_volatile, and UNSPECV_DARN_RAW. > ++(darn): Use an unspec_volatile, and UNSPECV_DARN. > ++ > ++2019-08-22 Segher Boessenkool > ++ > ++* config/rs6000/altivec.md (unspec): Delete UNSPEC_DARN, UNSPEC_DARN_32, > ++UNSPEC_DARN_RAW, UNSPEC_CMPRB, UNSPEC_CMPRB2, UNSPEC_CMPEQB; move to... > ++* config/rs6000/rs6000.md (unspec): ... here. > ++* config/rs6000/altivec.md (darn_32, darn_raw, darn, cmprb, > ++*cmprb_internal, setb_signed, setb_unsigned, cmprb2, *cmprb2_internal, > ++cmpeqb, *cmpeqb_internal): Delete, move to... > ++* config/rs6000/rs6000.md (darn_32, darn_raw, darn, cmprb, > ++*cmprb_internal, setb_signed, setb_unsigned, cmprb2, *cmprb2_internal, > ++cmpeqb, *cmpeqb_internal): ... here. > ++ > ++2019-08-22 Kyrylo Tkachov > ++ > ++* config/arm/arm_acle.h: Use arch=armv8-a+crc+simd pragma for CRC32 > ++intrinsics if __ARM_FP. > ++Use __ARM_FEATURE_CRC32 ifdef guard. > ++ > ++2019-08-22 Wilco Dijkstra > ++ > ++* config/arm/arm.md (neon_for_64bits): Remove. > ++(avoid_neon_for_64bits): Remove. > ++(arm_adddi3): Always split early. > ++(arm_subdi3): Always split early. > ++(negdi2): Remove Neon expansion. > ++(split zero_extend): Split before reload. > ++(split sign_extend): Split before reload. > ++ > ++2019-08-22 Wilco Dijkstra > ++ > ++* config/arm/iterators.md (qhs_extenddi_cstr): Update. > ++(qhs_extenddi_cstr): Likewise. > ++* config/arm/arm.md (ashldi3): Always expand early. > ++(ashlsi3): Likewise. > ++(ashrsi3): Likewise. > ++
[OE-core] [thud][PATCH v2] gcc: CVE fix for gcc
Signed-off-by: Muminul Islam --- meta/recipes-devtools/gcc/gcc-8.2.inc | 2 + .../gcc/gcc/0042-CVE-2019-15847_1.patch | 570 .../gcc/gcc/0043-CVE-2019-15847_2.patch | 640 ++ 3 files changed, 1212 insertions(+) create mode 100644 meta/recipes-devtools/gcc/gcc/0042-CVE-2019-15847_1.patch create mode 100644 meta/recipes-devtools/gcc/gcc/0043-CVE-2019-15847_2.patch diff --git a/meta/recipes-devtools/gcc/gcc-8.2.inc b/meta/recipes-devtools/gcc/gcc-8.2.inc index 866a77558b..cab494989e 100644 --- a/meta/recipes-devtools/gcc/gcc-8.2.inc +++ b/meta/recipes-devtools/gcc/gcc-8.2.inc @@ -70,6 +70,8 @@ SRC_URI = "\ file://0039-Fix-for-testsuite-failure.patch \ file://0040-Re-introduce-spe-commandline-options.patch \ file://0041-ARC-fix-spec-gen.patch \ + file://0042-CVE-2019-15847_1.patch \ + file://0043-CVE-2019-15847_2.patch \ ${BACKPORTS} \ " BACKPORTS = "\ diff --git a/meta/recipes-devtools/gcc/gcc/0042-CVE-2019-15847_1.patch b/meta/recipes-devtools/gcc/gcc/0042-CVE-2019-15847_1.patch new file mode 100644 index 00..edebf2fb41 --- /dev/null +++ b/meta/recipes-devtools/gcc/gcc/0042-CVE-2019-15847_1.patch @@ -0,0 +1,570 @@ +From 3efdb8c4afcbc5e07d33b05ab8c2bf88f42f4890 Mon Sep 17 00:00:00 2001 +From: segher +Date: Thu, 22 Aug 2019 19:36:21 + +Subject: [PATCH] rs6000: Use unspec_volatile for darn (PR91481) +Reply-To: muis...@microsoft.com + +Every call to darn should deliver a *new* random number; such calls +should not be CSEd together. So they should be unspec_volatile, not +plain unspec. + + PR target/91481 + * config/rs6000/rs6000.md (unspec): Delete UNSPEC_DARN, UNSPEC_DARN_32, + and UNSPEC_DARN_RAW. + (unspecv): New enumerator values UNSPECV_DARN, UNSPECV_DARN_32, and + UNSPECV_DARN_RAW. + (darn_32): Use an unspec_volatile, and UNSPECV_DARN_32. + (darn_raw): Use an unspec_volatile, and UNSPECV_DARN_RAW. + (darn): Use an unspec_volatile, and UNSPECV_DARN. + +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@274835 138bc75d-0d04-0410-961f-82ee72b054a4 +Signed-off-by: Muminul Islam + +CVE: CVE-2019-15847 +Upstream-Status: Backport +--- + gcc/ChangeLog | 336 +++- + gcc/config/rs6000/rs6000.md | 169 +- + 2 files changed, 503 insertions(+), 2 deletions(-) + +diff --git a/gcc/ChangeLog b/gcc/ChangeLog +index b93dae5dfb0..dc22d7e43b7 100644 +--- a/gcc/ChangeLog b/gcc/ChangeLog +@@ -1,4 +1,338 @@ +-2018-07-26 Release Manager ++2019-08-22 Segher Boessenkool ++ ++ PR target/91481 ++ * config/rs6000/rs6000.md (unspec): Delete UNSPEC_DARN, UNSPEC_DARN_32, ++ and UNSPEC_DARN_RAW. ++ (unspecv): New enumerator values UNSPECV_DARN, UNSPECV_DARN_32, and ++ UNSPECV_DARN_RAW. ++ (darn_32): Use an unspec_volatile, and UNSPECV_DARN_32. ++ (darn_raw): Use an unspec_volatile, and UNSPECV_DARN_RAW. ++ (darn): Use an unspec_volatile, and UNSPECV_DARN. ++ ++2019-08-22 Segher Boessenkool ++ ++ * config/rs6000/altivec.md (unspec): Delete UNSPEC_DARN, UNSPEC_DARN_32, ++ UNSPEC_DARN_RAW, UNSPEC_CMPRB, UNSPEC_CMPRB2, UNSPEC_CMPEQB; move to... ++ * config/rs6000/rs6000.md (unspec): ... here. ++ * config/rs6000/altivec.md (darn_32, darn_raw, darn, cmprb, ++ *cmprb_internal, setb_signed, setb_unsigned, cmprb2, *cmprb2_internal, ++ cmpeqb, *cmpeqb_internal): Delete, move to... ++ * config/rs6000/rs6000.md (darn_32, darn_raw, darn, cmprb, ++ *cmprb_internal, setb_signed, setb_unsigned, cmprb2, *cmprb2_internal, ++ cmpeqb, *cmpeqb_internal): ... here. ++ ++2019-08-22 Kyrylo Tkachov ++ ++ * config/arm/arm_acle.h: Use arch=armv8-a+crc+simd pragma for CRC32 ++ intrinsics if __ARM_FP. ++ Use __ARM_FEATURE_CRC32 ifdef guard. ++ ++2019-08-22 Wilco Dijkstra ++ ++ * config/arm/arm.md (neon_for_64bits): Remove. ++ (avoid_neon_for_64bits): Remove. ++ (arm_adddi3): Always split early. ++ (arm_subdi3): Always split early. ++ (negdi2): Remove Neon expansion. ++ (split zero_extend): Split before reload. ++ (split sign_extend): Split before reload. ++ ++2019-08-22 Wilco Dijkstra ++ ++ * config/arm/iterators.md (qhs_extenddi_cstr): Update. ++ (qhs_extenddi_cstr): Likewise. ++ * config/arm/arm.md (ashldi3): Always expand early. ++ (ashlsi3): Likewise. ++ (ashrsi3): Likewise. ++ (zero_extenddi2): Remove Neon variants. ++ (extenddi2): Likewise. ++ * config/arm/neon.md (ashldi3_neon_noclobber): Remove. ++ (signed_shift_di3_neon): Likewise. ++ (unsigned_shift_di3_neon): Likewise. ++ (ashrdi3_neon_imm_noclobber): Likewise. ++ (lshrdi3_neon_imm_noclobber): Likewise. ++ (di3_neon): Likewise. ++ (split extend): Remove DI extend split patterns. ++ ++2019-08-22 Wilco Dijkstra ++ ++ *