[meta-xilinx] [PATCH v2 0/7] MicroBlaze updates and toolchain improvements

Manjukumar Harthikote Matha MANJUKUM at xilinx.com
Wed Dec 6 13:34:29 PST 2017


Hi Nathan,

> -----Original Message-----
> From: meta-xilinx-bounces at yoctoproject.org [mailto:meta-xilinx-
> bounces at yoctoproject.org] On Behalf Of Nathan Rossi
> Sent: Friday, November 24, 2017 5:28 AM
> To: meta-xilinx at yoctoproject.org
> Subject: [meta-xilinx] [PATCH v2 0/7] MicroBlaze updates and toolchain
> improvements
> 
> This series updates the 'kc705-microblazeel' to the Xilinx v2017.3 release. This
> includes a number of updates to the device tree and tune configuration.
> 
> The major change in this series is the inclusion of all Xilinx MicroBlaze GCC and
> Binutils patches to support a number of new features added to MicroBlaze (in v10.0)
> as well as a number of fixes to various components. The aim is to bring functional
> parity between the OE built GCC/Binutils and the Xilinx SDK toolchains.
> 
> All patches for GCC and Binutils can also be found in the follow git repositories with
> the following refs:
>  * https://github.com/nathanrossi/gcc/tree/nrossi/oe/7.2
>  * https://github.com/nathanrossi/binutils-gdb/tree/microblaze/2.29/sorted
> 
> Due to the additional features added in GCC with v10.0 additional tune configuration
> changes have been made. This includes the 'frequency-optimized' tune which passes
> -mxl-frequency to GCC to enable 8-stage pipeline optimizations.
> 
> The MicroBlaze tune versions include is also cleaned up, with the removal of
> generated tune conflicts to better align with OE-Core.
> ---
> 
> Changes in v2:
>  * Added 2 additional binutils patches
>  * Added 'reorder' feature for kc705-microblazeel
>  * Setup kc705-microblazeel kernel config to use MicroBlaze v10.0
> 
> Nathan Rossi (7):
>   kc705-bitstream_2017.3.bb: Update to v2017.3 KC705 bitstream
>   kc705-microblazeel: Updates to match v2017.3 bitstream
>   feature-microblaze-versions.inc: Rework and expand version conflicts
>   arch-microblaze.inc: Add v10.0 conflict for bigendian
>   arch-microblaze.inc: Add 'frequency-optimized' tune

The above patches are an ACK

>   binutils: Add all Xilinx MicroBlaze binutils 2.29 patches
>   gcc-source: Add all Xilinx MicroBlaze GCC 7.2 patches

The binutils and gcc-source are being reviewed and we will get back to you on this.
The regression tests will take some time. I will add the ACK'd patches and cut rocko branch.
We can backport the binutils and gcc-source patches to Rocko branch once the verification is complete

Thanks,
Manju


> 
>  .../machine/include/microblaze/arch-microblaze.inc |  14 +-
>  .../microblaze/feature-microblaze-versions.inc     |  92 ++++----
>  conf/machine/kc705-microblazeel.conf               |   5 +-
>  .../kc705-microblazeel/kc705-microblazeel.dts      |  21 +-
>  .../device-tree/files/kc705-microblazeel/pl.dtsi   |  22 +-
>  .../files/kc705-microblazeel/system-conf.dtsi      |  13 +-
>  ...tstream_2016.3.bb => kc705-bitstream_2017.3.bb} |   8 +-
>  .../bsp/kc705-microblazeel/kc705-microblazeel.cfg  |   2 +-
>  recipes-microblaze/binutils/binutils%.bbappend     |  15 ++
>  ...Add-wdc.ext.clear-and-wdc.ext.flush-insns.patch |  67 ++++++  ...-add-mlittle-
> endian-and-mbig-endian-flags.patch |  66 ++++++  ...able-the-warning-message-for-
> eh_frame_hdr.patch |  36 +++  ...laxation-of-assembler-resolved-references.patch |
> 78 +++++++  ...Blaze-debug_loc-sections-after-linker-rel.patch | 236
> +++++++++++++++++++  ...Fix-bug-in-MicroBlaze-TLSTPREL-Relocation.patch |  37
> +++  ...MicroBlaze-address-extension-instructions.patch | 106 +++++++++  ...Add-
> new-MicroBlaze-bit-field-instructions.patch | 232 +++++++++++++++++++
>  .../0009-Fixing-MicroBlaze-IMM-bug.patch           |  31 +++
>  ...n-GCC-so-that-it-will-support-.long-0U-an.patch |  36 +++  ...ing-MicroBlaze-
> constant-range-check-issue.patch |  30 +++  ...ze-fix-mask-for-barrel-shift-
> instructions.patch |  38 ++++
>  recipes-microblaze/gcc/gcc-7/0001-Revert.patch     |   6 +-
>  ...md-Improve-adddi3-and-subdi3-insn-definit.patch |   7 +-
>  ...icroblaze-Use-default-ident-output-gener.patch} |   7 +-
>  ...sync.md-Correct-behaviour-and-define-side.patch |  76 -------  ...-static-testing-
> on-qemu-suppress-warnings.patch |  36 +++  ...xplicitly-add-fivopts-for-tests-that-
> depe.patch | 118 ++++++++++  ...aze-to-target-supports-for-atomic-builtin.patch |
> 37 +++  ...oBlaze-strings-test-for-new-scan-assembly.patch |  46 ++++  ...-
> MicroBlaze-.weakext-pattern-in-testsuite.patch |  68 ++++++  ...aze-to-
> check_profiling_available-Testsuit.patch |  32 +++
>  .../gcc/gcc-7/0010-Fix-atomic-side-effects.patch   |  69 ++++++
>  .../0011-Fix-atomic-boolean-return-value.patch     |  44 ++++
>  ...Microblaze-crash-with-msmall-divides-flag.patch |  37 +++  ...013-Add-
> MicroBlaze-ashrsi_3_with_size_opt.patch |  53 +++++  .../0014-Removed-
> MicroBlaze-moddi3-routinue.patch  | 156 +++++++++++++  ...fixed-missing-save-of-
> r18-in-fast_interru.patch |  46 ++++  ...-MicroBlaze-use-bralid-for-profiler-
> calls.patch |  29 +++  ...opts-by-default-Turn-off-ivopts-by-defaul.patch |  38 ++++
> ...IORITY-support-Added-TARGET_ASM_CONSTRUCT.patch | 104 +++++++++  ...add-
> optimized-lshrsi3-When-barrel-shifter.patch |  87 +++++++  ...0020-Modified-
> MicroBlaze-trap-instruction.patch |  33 +++  ...ack-space-for-arguments-Currently-
> in-Micr.patch | 212 +++++++++++++++++
>  .../0022-Inline-Expansion-of-fsqrt-builtin.patch   |  64 ++++++
>  ...-Update-MicroBlaze-ashlsi3-movsf-patterns.patch |  78 +++++++
>  .../0024-8-stage-pipeline-for-microblaze.patch     | 195 ++++++++++++++++
>  ...correct-the-const-high-double-immediate-v.patch |  72 ++++++  ...ternal-
> compiler-error-with-msmall-divides.patch |  42 ++++  ...culation-of-high-word-in-a-
> long-long-64-b.patch |  48 ++++
>  .../0028-Add-new-bit-field-instructions.patch      | 126 +++++++++++
>  .../0029-Fix-bug-in-MB-version-calculation.patch   | 250 +++++++++++++++++++++
>  ...fixing-the-bug-in-the-bit-field-instructi.patch |  52 +++++  ...g-the-issue-with-
> MicroBlaze-builtin_alloc.patch |  48 ++++  ...Blaze-remove-bitfield-instructions-
> macros.patch |  83 +++++++  ...fix-signed-bit-fields-with-bit-field-inst.patch |  51
> +++++
>  recipes-microblaze/gcc/gcc-source_7.%.bbappend     |  33 ++-
>  56 files changed, 3485 insertions(+), 183 deletions(-)  rename recipes-bsp/reference-
> design/{kc705-bitstream_2016.3.bb => kc705-bitstream_2017.3.bb} (84%)  create
> mode 100644 recipes-microblaze/binutils/binutils%.bbappend
>  create mode 100644 recipes-microblaze/binutils/binutils-2.29/0001-MicroBlaze-
> Add-wdc.ext.clear-and-wdc.ext.flush-insns.patch
>  create mode 100644 recipes-microblaze/binutils/binutils-2.29/0002-MicroBlaze-
> add-mlittle-endian-and-mbig-endian-flags.patch
>  create mode 100644 recipes-microblaze/binutils/binutils-2.29/0003-Disable-the-
> warning-message-for-eh_frame_hdr.patch
>  create mode 100644 recipes-microblaze/binutils/binutils-2.29/0004-Fix-relaxation-
> of-assembler-resolved-references.patch
>  create mode 100644 recipes-microblaze/binutils/binutils-2.29/0005-Fixup-
> MicroBlaze-debug_loc-sections-after-linker-rel.patch
>  create mode 100644 recipes-microblaze/binutils/binutils-2.29/0006-Fix-bug-in-
> MicroBlaze-TLSTPREL-Relocation.patch
>  create mode 100644 recipes-microblaze/binutils/binutils-2.29/0007-Add-
> MicroBlaze-address-extension-instructions.patch
>  create mode 100644 recipes-microblaze/binutils/binutils-2.29/0008-Add-new-
> MicroBlaze-bit-field-instructions.patch
>  create mode 100644 recipes-microblaze/binutils/binutils-2.29/0009-Fixing-
> MicroBlaze-IMM-bug.patch
>  create mode 100644 recipes-microblaze/binutils/binutils-2.29/0010-Fixed-bug-in-
> GCC-so-that-it-will-support-.long-0U-an.patch
>  create mode 100644 recipes-microblaze/binutils/binutils-2.29/0011-Fixing-
> MicroBlaze-constant-range-check-issue.patch
>  create mode 100644 recipes-microblaze/binutils/binutils-2.29/0012-MicroBlaze-fix-
> mask-for-barrel-shift-instructions.patch
>  rename recipes-microblaze/gcc/gcc-7/{0004-gcc-config-microblaze-Use-default-
> ident-output-gener.patch => 0003-gcc-config-microblaze-Use-default-ident-output-
> gener.patch} (95%)  delete mode 100644 recipes-microblaze/gcc/gcc-7/0003-
> microblaze-sync.md-Correct-behaviour-and-define-side.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0004-dejagnu-static-testing-on-
> qemu-suppress-warnings.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0005-Testsuite-explicitly-add-
> fivopts-for-tests-that-depe.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0006-Add-MicroBlaze-to-
> target-supports-for-atomic-builtin.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0007-Update-MicroBlaze-
> strings-test-for-new-scan-assembly.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0008-Allow-MicroBlaze-
> .weakext-pattern-in-testsuite.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0009-Add-MicroBlaze-to-
> check_profiling_available-Testsuit.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0010-Fix-atomic-side-
> effects.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0011-Fix-atomic-boolean-
> return-value.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0012-Fix-the-Microblaze-crash-
> with-msmall-divides-flag.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0013-Add-MicroBlaze-
> ashrsi_3_with_size_opt.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0014-Removed-MicroBlaze-
> moddi3-routinue.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0015-MicroBlaze-fixed-missing-
> save-of-r18-in-fast_interru.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0016-MicroBlaze-use-bralid-for-
> profiler-calls.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0017-Disable-fivopts-by-
> default-Turn-off-ivopts-by-defaul.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0018-Add-INIT_PRIORITY-
> support-Added-TARGET_ASM_CONSTRUCT.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0019-MicroBlaze-add-
> optimized-lshrsi3-When-barrel-shifter.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0020-Modified-MicroBlaze-
> trap-instruction.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0021-Reducing-Stack-space-for-
> arguments-Currently-in-Micr.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0022-Inline-Expansion-of-fsqrt-
> builtin.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0023-Update-MicroBlaze-
> ashlsi3-movsf-patterns.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0024-8-stage-pipeline-for-
> microblaze.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0025-MicroBlaze-correct-the-
> const-high-double-immediate-v.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0026-Fix-internal-compiler-
> error-with-msmall-divides.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0027-Fix-the-calculation-of-
> high-word-in-a-long-long-64-b.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0028-Add-new-bit-field-
> instructions.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0029-Fix-bug-in-MB-version-
> calculation.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0030-MicroBlaze-fixing-the-
> bug-in-the-bit-field-instructi.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0031-Fixing-the-issue-with-
> MicroBlaze-builtin_alloc.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0032-MicroBlaze-remove-
> bitfield-instructions-macros.patch
>  create mode 100644 recipes-microblaze/gcc/gcc-7/0033-MicroBlaze-fix-signed-bit-
> fields-with-bit-field-inst.patch
> 
> --
> 2.15.0
> 
> --
> _______________________________________________
> meta-xilinx mailing list
> meta-xilinx at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-xilinx



More information about the meta-xilinx mailing list