diff options
Diffstat (limited to 'meta-vitis-tc/recipes-devtools/gcc/gcc-13/additional-microblaze-multilibs.patch')
| -rw-r--r-- | meta-vitis-tc/recipes-devtools/gcc/gcc-13/additional-microblaze-multilibs.patch | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/meta-vitis-tc/recipes-devtools/gcc/gcc-13/additional-microblaze-multilibs.patch b/meta-vitis-tc/recipes-devtools/gcc/gcc-13/additional-microblaze-multilibs.patch new file mode 100644 index 00000000..e035b8a6 --- /dev/null +++ b/meta-vitis-tc/recipes-devtools/gcc/gcc-13/additional-microblaze-multilibs.patch | |||
| @@ -0,0 +1,88 @@ | |||
| 1 | Change the multilib settings to match the expectations of Vitis and related. | ||
| 2 | |||
| 3 | The multilib list is as follows: | ||
| 4 | |||
| 5 | .; | ||
| 6 | le;@mlittle-endian | ||
| 7 | bs;@mxl-barrel-shift | ||
| 8 | p;@mxl-pattern-compare | ||
| 9 | m;@mno-xl-soft-mul | ||
| 10 | fpd;@mhard-float | ||
| 11 | m/fpd;@mno-xl-soft-mul@mhard-float | ||
| 12 | p/m;@mxl-pattern-compare@mno-xl-soft-mul | ||
| 13 | p/fpd;@mxl-pattern-compare@mhard-float | ||
| 14 | p/m/fpd;@mxl-pattern-compare@mno-xl-soft-mul@mhard-float | ||
| 15 | bs/p;@mxl-barrel-shift@mxl-pattern-compare | ||
| 16 | bs/m;@mxl-barrel-shift@mno-xl-soft-mul | ||
| 17 | bs/fpd;@mxl-barrel-shift@mhard-float | ||
| 18 | bs/m/fpd;@mxl-barrel-shift@mno-xl-soft-mul@mhard-float | ||
| 19 | bs/p/m;@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul | ||
| 20 | bs/p/fpd;@mxl-barrel-shift@mxl-pattern-compare@mhard-float | ||
| 21 | bs/p/m/fpd;@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul@mhard-float | ||
| 22 | le/m64;@mlittle-endian@m64 | ||
| 23 | le/bs;@mlittle-endian@mxl-barrel-shift | ||
| 24 | le/p;@mlittle-endian@mxl-pattern-compare | ||
| 25 | le/m;@mlittle-endian@mno-xl-soft-mul | ||
| 26 | le/fpd;@mlittle-endian@mhard-float | ||
| 27 | le/m/fpd;@mlittle-endian@mno-xl-soft-mul@mhard-float | ||
| 28 | le/p/m;@mlittle-endian@mxl-pattern-compare@mno-xl-soft-mul | ||
| 29 | le/p/fpd;@mlittle-endian@mxl-pattern-compare@mhard-float | ||
| 30 | le/p/m/fpd;@mlittle-endian@mxl-pattern-compare@mno-xl-soft-mul@mhard-float | ||
| 31 | le/bs/p;@mlittle-endian@mxl-barrel-shift@mxl-pattern-compare | ||
| 32 | le/bs/m;@mlittle-endian@mxl-barrel-shift@mno-xl-soft-mul | ||
| 33 | le/bs/fpd;@mlittle-endian@mxl-barrel-shift@mhard-float | ||
| 34 | le/bs/m/fpd;@mlittle-endian@mxl-barrel-shift@mno-xl-soft-mul@mhard-float | ||
| 35 | le/bs/p/m;@mlittle-endian@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul | ||
| 36 | le/bs/p/fpd;@mlittle-endian@mxl-barrel-shift@mxl-pattern-compare@mhard-float | ||
| 37 | le/bs/p/m/fpd;@mlittle-endian@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul@mhard-float | ||
| 38 | le/m64/bs;@mlittle-endian@m64@mxl-barrel-shift | ||
| 39 | le/m64/p;@mlittle-endian@m64@mxl-pattern-compare | ||
| 40 | le/m64/m;@mlittle-endian@m64@mno-xl-soft-mul | ||
| 41 | le/m64/fpd;@mlittle-endian@m64@mhard-float | ||
| 42 | le/m64/m/fpd;@mlittle-endian@m64@mno-xl-soft-mul@mhard-float | ||
| 43 | le/m64/p/m;@mlittle-endian@m64@mxl-pattern-compare@mno-xl-soft-mul | ||
| 44 | le/m64/p/fpd;@mlittle-endian@m64@mxl-pattern-compare@mhard-float | ||
| 45 | le/m64/p/m/fpd;@mlittle-endian@m64@mxl-pattern-compare@mno-xl-soft-mul@mhard-float | ||
| 46 | le/m64/bs/p;@mlittle-endian@m64@mxl-barrel-shift@mxl-pattern-compare | ||
| 47 | le/m64/bs/m;@mlittle-endian@m64@mxl-barrel-shift@mno-xl-soft-mul | ||
| 48 | le/m64/bs/fpd;@mlittle-endian@m64@mxl-barrel-shift@mhard-float | ||
| 49 | le/m64/bs/m/fpd;@mlittle-endian@m64@mxl-barrel-shift@mno-xl-soft-mul@mhard-float | ||
| 50 | le/m64/bs/p/m;@mlittle-endian@m64@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul | ||
| 51 | le/m64/bs/p/fpd;@mlittle-endian@m64@mxl-barrel-shift@mxl-pattern-compare@mhard-float | ||
| 52 | le/m64/bs/p/m/fpd;@mlittle-endian@m64@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul@mhard-float | ||
| 53 | |||
| 54 | As part of this the order of the multilibs was changes from upstream to make | ||
| 55 | it easier to avoid big-endian m64, which is not supported by the toolchain. | ||
| 56 | |||
| 57 | Upstream-Status: Inappropriate [AMD Microblaze specific] | ||
| 58 | |||
| 59 | Signed-off-by: Mark Hatle <mark.hatle@xilinx.com> | ||
| 60 | |||
| 61 | Index: gcc-12.2.0/gcc/config/microblaze/t-microblaze | ||
| 62 | =================================================================== | ||
| 63 | --- gcc-12.2.0.orig/gcc/config/microblaze/t-microblaze | ||
| 64 | +++ gcc-12.2.0/gcc/config/microblaze/t-microblaze | ||
| 65 | @@ -1,17 +1,11 @@ | ||
| 66 | -MULTILIB_OPTIONS = m64 mxl-barrel-shift mlittle-endian mno-xl-soft-mul mxl-multiply-high | ||
| 67 | -#MULTILIB_DIRNAMES = m64 bs le m mh | ||
| 68 | -MULTILIB_DIRNAMES = . . . . . | ||
| 69 | -MULTILIB_EXCEPTIONS = *m64/mxl-multiply-high mxl-multiply-high | ||
| 70 | -MULTILIB_EXCEPTIONS += *m64 | ||
| 71 | -MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift | ||
| 72 | -MULTILIB_EXCEPTIONS += *m64/mno-xl-soft-mul | ||
| 73 | -MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift/mno-xl-soft-mul | ||
| 74 | -MULTILIB_EXCEPTIONS += *m64/mno-xl-soft-mul | ||
| 75 | -MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift/mno-xl-soft-mul/mxl-multiply-high | ||
| 76 | -MULTILIB_EXCEPTIONS += *m64/mno-xl-soft-mul/mxl-multiply-high | ||
| 77 | +MULTILIB_OPTIONS = mlittle-endian m64 mxl-barrel-shift mxl-pattern-compare mno-xl-soft-mul mhard-float | ||
| 78 | +MULTILIB_DIRNAMES = le m64 bs p m fpd | ||
| 79 | +MULTILIB_EXCEPTIONS = mxl-multiply-high | ||
| 80 | MULTILIB_EXCEPTIONS += *mxl-barrel-shift/mxl-multiply-high mxl-multiply-high | ||
| 81 | MULTILIB_EXCEPTIONS += *mlittle-endian/mxl-multiply-high mxl-multiply-high | ||
| 82 | -MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift/mlittle-endian/mxl-multiply-high | ||
| 83 | +MULTILIB_EXCEPTIONS += *mxl-pattern-compare*/*mxl-multiply-high* | ||
| 84 | +# Big endian m64 is not supported | ||
| 85 | +MULTILIB_EXCEPTIONS += m64* | ||
| 86 | |||
| 87 | # Extra files | ||
| 88 | microblaze-c.o: $(srcdir)/config/microblaze/microblaze-c.cc \ | ||
