From d018b3b86a7933f8ae03e47548db2c39e2c4a25a Mon Sep 17 00:00:00 2001 From: Mark Hatle Date: Mon, 25 Jul 2022 15:39:17 -0500 Subject: gcc-source: Move to gcc 12 Signed-off-by: Mark Hatle --- .../gcc-11/additional-microblaze-multilibs.patch | 86 ---------------------- .../gcc-12/additional-microblaze-multilibs.patch | 86 ++++++++++++++++++++++ .../recipes-devtools/gcc/gcc-source_11.%.bbappend | 15 ---- .../recipes-devtools/gcc/gcc-source_12.%.bbappend | 15 ++++ 4 files changed, 101 insertions(+), 101 deletions(-) delete mode 100644 meta-xilinx-standalone/recipes-devtools/gcc/gcc-11/additional-microblaze-multilibs.patch create mode 100644 meta-xilinx-standalone/recipes-devtools/gcc/gcc-12/additional-microblaze-multilibs.patch delete mode 100644 meta-xilinx-standalone/recipes-devtools/gcc/gcc-source_11.%.bbappend create mode 100644 meta-xilinx-standalone/recipes-devtools/gcc/gcc-source_12.%.bbappend (limited to 'meta-xilinx-standalone/recipes-devtools') diff --git a/meta-xilinx-standalone/recipes-devtools/gcc/gcc-11/additional-microblaze-multilibs.patch b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-11/additional-microblaze-multilibs.patch deleted file mode 100644 index 3d520d0f..00000000 --- a/meta-xilinx-standalone/recipes-devtools/gcc/gcc-11/additional-microblaze-multilibs.patch +++ /dev/null @@ -1,86 +0,0 @@ -Change the multilib settings to match the expectations of Vitis and related. - -The multilib list is as follows: - -.; -le;@mlittle-endian -bs;@mxl-barrel-shift -p;@mxl-pattern-compare -m;@mno-xl-soft-mul -fpd;@mhard-float -m/fpd;@mno-xl-soft-mul@mhard-float -p/m;@mxl-pattern-compare@mno-xl-soft-mul -p/fpd;@mxl-pattern-compare@mhard-float -p/m/fpd;@mxl-pattern-compare@mno-xl-soft-mul@mhard-float -bs/p;@mxl-barrel-shift@mxl-pattern-compare -bs/m;@mxl-barrel-shift@mno-xl-soft-mul -bs/fpd;@mxl-barrel-shift@mhard-float -bs/m/fpd;@mxl-barrel-shift@mno-xl-soft-mul@mhard-float -bs/p/m;@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul -bs/p/fpd;@mxl-barrel-shift@mxl-pattern-compare@mhard-float -bs/p/m/fpd;@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul@mhard-float -le/m64;@mlittle-endian@m64 -le/bs;@mlittle-endian@mxl-barrel-shift -le/p;@mlittle-endian@mxl-pattern-compare -le/m;@mlittle-endian@mno-xl-soft-mul -le/fpd;@mlittle-endian@mhard-float -le/m/fpd;@mlittle-endian@mno-xl-soft-mul@mhard-float -le/p/m;@mlittle-endian@mxl-pattern-compare@mno-xl-soft-mul -le/p/fpd;@mlittle-endian@mxl-pattern-compare@mhard-float -le/p/m/fpd;@mlittle-endian@mxl-pattern-compare@mno-xl-soft-mul@mhard-float -le/bs/p;@mlittle-endian@mxl-barrel-shift@mxl-pattern-compare -le/bs/m;@mlittle-endian@mxl-barrel-shift@mno-xl-soft-mul -le/bs/fpd;@mlittle-endian@mxl-barrel-shift@mhard-float -le/bs/m/fpd;@mlittle-endian@mxl-barrel-shift@mno-xl-soft-mul@mhard-float -le/bs/p/m;@mlittle-endian@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul -le/bs/p/fpd;@mlittle-endian@mxl-barrel-shift@mxl-pattern-compare@mhard-float -le/bs/p/m/fpd;@mlittle-endian@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul@mhard-float -le/m64/bs;@mlittle-endian@m64@mxl-barrel-shift -le/m64/p;@mlittle-endian@m64@mxl-pattern-compare -le/m64/m;@mlittle-endian@m64@mno-xl-soft-mul -le/m64/fpd;@mlittle-endian@m64@mhard-float -le/m64/m/fpd;@mlittle-endian@m64@mno-xl-soft-mul@mhard-float -le/m64/p/m;@mlittle-endian@m64@mxl-pattern-compare@mno-xl-soft-mul -le/m64/p/fpd;@mlittle-endian@m64@mxl-pattern-compare@mhard-float -le/m64/p/m/fpd;@mlittle-endian@m64@mxl-pattern-compare@mno-xl-soft-mul@mhard-float -le/m64/bs/p;@mlittle-endian@m64@mxl-barrel-shift@mxl-pattern-compare -le/m64/bs/m;@mlittle-endian@m64@mxl-barrel-shift@mno-xl-soft-mul -le/m64/bs/fpd;@mlittle-endian@m64@mxl-barrel-shift@mhard-float -le/m64/bs/m/fpd;@mlittle-endian@m64@mxl-barrel-shift@mno-xl-soft-mul@mhard-float -le/m64/bs/p/m;@mlittle-endian@m64@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul -le/m64/bs/p/fpd;@mlittle-endian@m64@mxl-barrel-shift@mxl-pattern-compare@mhard-float -le/m64/bs/p/m/fpd;@mlittle-endian@m64@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul@mhard-float - -As part of this the order of the multilibs was changes from upstream to make -it easier to avoid big-endian m64, which is not supported by the toolchain. - -Signed-off-by: Mark Hatle - -Index: gcc-9.2.0/gcc/config/microblaze/t-microblaze -=================================================================== ---- gcc-9.2.0.orig/gcc/config/microblaze/t-microblaze -+++ gcc-9.2.0/gcc/config/microblaze/t-microblaze -@@ -1,17 +1,11 @@ --MULTILIB_OPTIONS = m64 mxl-barrel-shift mlittle-endian mno-xl-soft-mul mxl-multiply-high --#MULTILIB_DIRNAMES = m64 bs le m mh --MULTILIB_DIRNAMES = . . . . . --MULTILIB_EXCEPTIONS = *m64/mxl-multiply-high mxl-multiply-high --MULTILIB_EXCEPTIONS += *m64 --MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift --MULTILIB_EXCEPTIONS += *m64/mno-xl-soft-mul --MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift/mno-xl-soft-mul --MULTILIB_EXCEPTIONS += *m64/mno-xl-soft-mul --MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift/mno-xl-soft-mul/mxl-multiply-high --MULTILIB_EXCEPTIONS += *m64/mno-xl-soft-mul/mxl-multiply-high -+MULTILIB_OPTIONS = mlittle-endian m64 mxl-barrel-shift mxl-pattern-compare mno-xl-soft-mul mhard-float -+MULTILIB_DIRNAMES = le m64 bs p m fpd -+MULTILIB_EXCEPTIONS = mxl-multiply-high - MULTILIB_EXCEPTIONS += *mxl-barrel-shift/mxl-multiply-high mxl-multiply-high - MULTILIB_EXCEPTIONS += *mlittle-endian/mxl-multiply-high mxl-multiply-high --MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift/mlittle-endian/mxl-multiply-high -+MULTILIB_EXCEPTIONS += *mxl-pattern-compare*/*mxl-multiply-high* -+# Big endian m64 is not supported -+MULTILIB_EXCEPTIONS += m64* - - # Extra files - microblaze-c.o: $(srcdir)/config/microblaze/microblaze-c.c \ diff --git a/meta-xilinx-standalone/recipes-devtools/gcc/gcc-12/additional-microblaze-multilibs.patch b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-12/additional-microblaze-multilibs.patch new file mode 100644 index 00000000..3d520d0f --- /dev/null +++ b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-12/additional-microblaze-multilibs.patch @@ -0,0 +1,86 @@ +Change the multilib settings to match the expectations of Vitis and related. + +The multilib list is as follows: + +.; +le;@mlittle-endian +bs;@mxl-barrel-shift +p;@mxl-pattern-compare +m;@mno-xl-soft-mul +fpd;@mhard-float +m/fpd;@mno-xl-soft-mul@mhard-float +p/m;@mxl-pattern-compare@mno-xl-soft-mul +p/fpd;@mxl-pattern-compare@mhard-float +p/m/fpd;@mxl-pattern-compare@mno-xl-soft-mul@mhard-float +bs/p;@mxl-barrel-shift@mxl-pattern-compare +bs/m;@mxl-barrel-shift@mno-xl-soft-mul +bs/fpd;@mxl-barrel-shift@mhard-float +bs/m/fpd;@mxl-barrel-shift@mno-xl-soft-mul@mhard-float +bs/p/m;@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul +bs/p/fpd;@mxl-barrel-shift@mxl-pattern-compare@mhard-float +bs/p/m/fpd;@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul@mhard-float +le/m64;@mlittle-endian@m64 +le/bs;@mlittle-endian@mxl-barrel-shift +le/p;@mlittle-endian@mxl-pattern-compare +le/m;@mlittle-endian@mno-xl-soft-mul +le/fpd;@mlittle-endian@mhard-float +le/m/fpd;@mlittle-endian@mno-xl-soft-mul@mhard-float +le/p/m;@mlittle-endian@mxl-pattern-compare@mno-xl-soft-mul +le/p/fpd;@mlittle-endian@mxl-pattern-compare@mhard-float +le/p/m/fpd;@mlittle-endian@mxl-pattern-compare@mno-xl-soft-mul@mhard-float +le/bs/p;@mlittle-endian@mxl-barrel-shift@mxl-pattern-compare +le/bs/m;@mlittle-endian@mxl-barrel-shift@mno-xl-soft-mul +le/bs/fpd;@mlittle-endian@mxl-barrel-shift@mhard-float +le/bs/m/fpd;@mlittle-endian@mxl-barrel-shift@mno-xl-soft-mul@mhard-float +le/bs/p/m;@mlittle-endian@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul +le/bs/p/fpd;@mlittle-endian@mxl-barrel-shift@mxl-pattern-compare@mhard-float +le/bs/p/m/fpd;@mlittle-endian@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul@mhard-float +le/m64/bs;@mlittle-endian@m64@mxl-barrel-shift +le/m64/p;@mlittle-endian@m64@mxl-pattern-compare +le/m64/m;@mlittle-endian@m64@mno-xl-soft-mul +le/m64/fpd;@mlittle-endian@m64@mhard-float +le/m64/m/fpd;@mlittle-endian@m64@mno-xl-soft-mul@mhard-float +le/m64/p/m;@mlittle-endian@m64@mxl-pattern-compare@mno-xl-soft-mul +le/m64/p/fpd;@mlittle-endian@m64@mxl-pattern-compare@mhard-float +le/m64/p/m/fpd;@mlittle-endian@m64@mxl-pattern-compare@mno-xl-soft-mul@mhard-float +le/m64/bs/p;@mlittle-endian@m64@mxl-barrel-shift@mxl-pattern-compare +le/m64/bs/m;@mlittle-endian@m64@mxl-barrel-shift@mno-xl-soft-mul +le/m64/bs/fpd;@mlittle-endian@m64@mxl-barrel-shift@mhard-float +le/m64/bs/m/fpd;@mlittle-endian@m64@mxl-barrel-shift@mno-xl-soft-mul@mhard-float +le/m64/bs/p/m;@mlittle-endian@m64@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul +le/m64/bs/p/fpd;@mlittle-endian@m64@mxl-barrel-shift@mxl-pattern-compare@mhard-float +le/m64/bs/p/m/fpd;@mlittle-endian@m64@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul@mhard-float + +As part of this the order of the multilibs was changes from upstream to make +it easier to avoid big-endian m64, which is not supported by the toolchain. + +Signed-off-by: Mark Hatle + +Index: gcc-9.2.0/gcc/config/microblaze/t-microblaze +=================================================================== +--- gcc-9.2.0.orig/gcc/config/microblaze/t-microblaze ++++ gcc-9.2.0/gcc/config/microblaze/t-microblaze +@@ -1,17 +1,11 @@ +-MULTILIB_OPTIONS = m64 mxl-barrel-shift mlittle-endian mno-xl-soft-mul mxl-multiply-high +-#MULTILIB_DIRNAMES = m64 bs le m mh +-MULTILIB_DIRNAMES = . . . . . +-MULTILIB_EXCEPTIONS = *m64/mxl-multiply-high mxl-multiply-high +-MULTILIB_EXCEPTIONS += *m64 +-MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift +-MULTILIB_EXCEPTIONS += *m64/mno-xl-soft-mul +-MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift/mno-xl-soft-mul +-MULTILIB_EXCEPTIONS += *m64/mno-xl-soft-mul +-MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift/mno-xl-soft-mul/mxl-multiply-high +-MULTILIB_EXCEPTIONS += *m64/mno-xl-soft-mul/mxl-multiply-high ++MULTILIB_OPTIONS = mlittle-endian m64 mxl-barrel-shift mxl-pattern-compare mno-xl-soft-mul mhard-float ++MULTILIB_DIRNAMES = le m64 bs p m fpd ++MULTILIB_EXCEPTIONS = mxl-multiply-high + MULTILIB_EXCEPTIONS += *mxl-barrel-shift/mxl-multiply-high mxl-multiply-high + MULTILIB_EXCEPTIONS += *mlittle-endian/mxl-multiply-high mxl-multiply-high +-MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift/mlittle-endian/mxl-multiply-high ++MULTILIB_EXCEPTIONS += *mxl-pattern-compare*/*mxl-multiply-high* ++# Big endian m64 is not supported ++MULTILIB_EXCEPTIONS += m64* + + # Extra files + microblaze-c.o: $(srcdir)/config/microblaze/microblaze-c.c \ diff --git a/meta-xilinx-standalone/recipes-devtools/gcc/gcc-source_11.%.bbappend b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-source_11.%.bbappend deleted file mode 100644 index d8b803a3..00000000 --- a/meta-xilinx-standalone/recipes-devtools/gcc/gcc-source_11.%.bbappend +++ /dev/null @@ -1,15 +0,0 @@ -COMPATIBLE_HOST = "${HOST_SYS}" - -# Add MicroBlaze Patches (only when using MicroBlaze) -FILESEXTRAPATHS:append:microblaze:xilinx-standalone := ":${THISDIR}/gcc-11" -SRC_URI:append:microblaze:xilinx-standalone = " \ - file://additional-microblaze-multilibs.patch \ -" - -CHECK_FOR_MICROBLAZE:microblaze = "1" - -python() { - if d.getVar('CHECK_FOR_MICROBLAZE') == '1': - if 'xilinx-microblaze' not in d.getVar('BBFILE_COLLECTIONS').split(): - bb.fatal('You must include the meta-microblaze layer to build for this configuration.') -} diff --git a/meta-xilinx-standalone/recipes-devtools/gcc/gcc-source_12.%.bbappend b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-source_12.%.bbappend new file mode 100644 index 00000000..c0ccc3c3 --- /dev/null +++ b/meta-xilinx-standalone/recipes-devtools/gcc/gcc-source_12.%.bbappend @@ -0,0 +1,15 @@ +COMPATIBLE_HOST = "${HOST_SYS}" + +# Add MicroBlaze Patches (only when using MicroBlaze) +FILESEXTRAPATHS:append:microblaze:xilinx-standalone := ":${THISDIR}/gcc-12" +SRC_URI:append:microblaze:xilinx-standalone = " \ + file://additional-microblaze-multilibs.patch \ +" + +CHECK_FOR_MICROBLAZE:microblaze = "1" + +python() { + if d.getVar('CHECK_FOR_MICROBLAZE') == '1': + if 'xilinx-microblaze' not in d.getVar('BBFILE_COLLECTIONS').split(): + bb.fatal('You must include the meta-microblaze layer to build for this configuration.') +} -- cgit v1.2.3-54-g00ecf