Andrew Geissler | 84ad7c5 | 2020-06-27 00:00:16 -0500 | [diff] [blame] | 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 | Signed-off-by: Mark Hatle <mark.hatle@xilinx.com> |
| 58 | |
Andrew Geissler | a9ff2b3 | 2020-10-16 10:11:54 -0500 | [diff] [blame] | 59 | Index: gcc-9.2.0/gcc/config/microblaze/t-microblaze |
| 60 | =================================================================== |
| 61 | --- gcc-9.2.0.orig/gcc/config/microblaze/t-microblaze |
| 62 | +++ gcc-9.2.0/gcc/config/microblaze/t-microblaze |
| 63 | @@ -1,17 +1,11 @@ |
Andrew Geissler | 84ad7c5 | 2020-06-27 00:00:16 -0500 | [diff] [blame] | 64 | -MULTILIB_OPTIONS = m64 mxl-barrel-shift mlittle-endian mno-xl-soft-mul mxl-multiply-high |
Andrew Geissler | a9ff2b3 | 2020-10-16 10:11:54 -0500 | [diff] [blame] | 65 | -#MULTILIB_DIRNAMES = m64 bs le m mh |
| 66 | -MULTILIB_DIRNAMES = . . . . . |
Andrew Geissler | 84ad7c5 | 2020-06-27 00:00:16 -0500 | [diff] [blame] | 67 | -MULTILIB_EXCEPTIONS = *m64/mxl-multiply-high mxl-multiply-high |
| 68 | -MULTILIB_EXCEPTIONS += *m64 |
| 69 | -MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift |
| 70 | -MULTILIB_EXCEPTIONS += *m64/mno-xl-soft-mul |
| 71 | -MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift/mno-xl-soft-mul |
| 72 | -MULTILIB_EXCEPTIONS += *m64/mno-xl-soft-mul |
| 73 | -MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift/mno-xl-soft-mul/mxl-multiply-high |
| 74 | -MULTILIB_EXCEPTIONS += *m64/mno-xl-soft-mul/mxl-multiply-high |
| 75 | +MULTILIB_OPTIONS = mlittle-endian m64 mxl-barrel-shift mxl-pattern-compare mno-xl-soft-mul mhard-float |
| 76 | +MULTILIB_DIRNAMES = le m64 bs p m fpd |
| 77 | +MULTILIB_EXCEPTIONS = mxl-multiply-high |
| 78 | MULTILIB_EXCEPTIONS += *mxl-barrel-shift/mxl-multiply-high mxl-multiply-high |
| 79 | MULTILIB_EXCEPTIONS += *mlittle-endian/mxl-multiply-high mxl-multiply-high |
| 80 | -MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift/mlittle-endian/mxl-multiply-high |
| 81 | +MULTILIB_EXCEPTIONS += *mxl-pattern-compare*/*mxl-multiply-high* |
| 82 | +# Big endian m64 is not supported |
| 83 | +MULTILIB_EXCEPTIONS += m64* |
| 84 | |
| 85 | # Extra files |
| 86 | microblaze-c.o: $(srcdir)/config/microblaze/microblaze-c.c \ |