Commit graph

9 commits

Author SHA1 Message Date
ryoon
8817f588e9 Update to 2.32
Changelog:
GAS
Changes in 2.32:

* Add -mvexwig=[0|1] option to x86 assembler to control encoding of
  VEX.W-ignored (WIG) VEX instructions.

* Add -mx86-used-note=[yes|no] option to generate (or not) x86 GNU property
  notes.  Add a --enable-x86-used-note configure time option to set the
  default behavior.  Set the default if the configure option is not used
  to "no".

* Add support for the MIPS Loongson EXTensions R2 (EXT2) instructions.

* Add support for the MIPS Loongson EXTensions (EXT) instructions.

* Add support for the MIPS Loongson Content Address Memory (CAM) ASE.

* Add support for the C-SKY processor series.

* Add support for the MIPS Loongson MultiMedia extensions Instructions (MMI)
  ASE.

LD
Changes in 2.32:

* Report property change in linker map file when merging GNU properties.

* Add support for the C-SKY processor series.

* -t now doesn't report members within archives, unless -t is given twice.
  A single -t is now more useful when generating a list of files that should be
  packaged for a linker bug report.  For example:
    gcc hello.c -save-temps -Wl,-t | xargs realpath | sort | uniq > files
    tar cJf test.tar.xz `cat files`

BINUTILS
Changes in 2.32:

* The addr2line, c++filt, nm and objdump tools now have a limit on the
  maximum amount of recursion that is allowed whilst demangling strings.
  The value for this limit is defined by the DEMANGLE_RECRUSE_LIMIT
  constant declared in the include/demangle.h header file.  At the time
  of writing this constant has the value of 2048.

  The --no-recurse-limit option can be used to remove the limit, restoring
  the behaviour of earlier versions of these tools.  This may be needed in
  order to dmangle truly complicated names, but it also leaves the tools
  vulnerable to stack exhaustion from maliciously constructed mangled names.

* Objdump's --disassemble option can now take a parameter, specifying the
  starting symbol for disassembly.  Disassembly will continue from this
  symbol up to the next symbol or the end of the function.

* The MIPS port now supports the Loongson 2K1000 processor which implements
  the MIPS64r2 ISA, the Loongson-mmi ASE, Loongson-cam ASE, Loongson-ext ASE,
  Loongson-ext2 ASE and MSA ASE instructions. Add -march=gs264e option for
  Loongson 2K1000 processor.

* The MIPS port now supports the Loongson 3A2000/3A3000 processor which
  implements the MIPS64r2 ISA, the Loongson-mmi ASE, Loongson-cam ASE,
  Loongson-ext ASE and Loongson-ext2 ASE instructions. Add -march=gs464e
  option for Loongson 3A2000/3A3000 processor.

* The MIPS port now supports the Loongson 3A1000 processor, aka Loongson3a,
  which implements the MIPS64r2 ISA, the Loongson-mmi ASE, Loongson-cam ASE
  and Loongson-ext ASE instructions. Add -march=gs464 option for Loongson
  3A1000 processor, The -march=loongson3a is an alias of -march=gs464 for
  compatibility.
2019-05-12 06:19:30 +00:00
ryoon
afe5d5d8fa Update to 2.31.1
Changelog:
2.31.1
  This release also contains a fix for PR gold/23409 where the gold
  linker could end up creating duplicate copies of some symbols.

2.31
This release contains numerous bug fixes, and also the
following new features:

  * Direct linking with DLLs for Cygwin and Mingw targets is now faster.

  * The linker now defaults to enabling -z separate-code for Linux
    targets, although a configure time option can change this.
    This option can increase disk and memory size of executables, but
    it does help to improve security.

  * The disassembler supports Netronome Flow Processor (NFP) firmware
    files.

  * The AArch64 disassembler supports showing disassembly notes which
    are emitted when inconsistencies are found with the instruction that
    may result in the instruction being invalid.  It also emits warnings
    when a combination of an instruction and a named register could be
    invalid.

  * The AR archive manager now supports an "O" modifier to display
    member offsets inside an archive.

  * The ADR and ADRL pseudo-instructions supported by the ARM assembler
    now only set the bottom bit of the address of thumb function symbols
    if the -mthumb-interwork command line option is active.

  * The MIPS assembler supports the Global INValidate (GINV) and
    Cyclic Redudancy Check (CRC) architecture extensions.

  * Support has been added for the Freescale S12Z architecture.

  * The assembler has a new --generate-missing-build-notes=[yes|no]
    option to create (or not) GNU Build Attribute notes if none are
    present in the input sources.

  * The -mold-gcc command-line option has been removed for x86 targets.

  * The x86 assembler now supports a -O[2|s] command-line options to
    enable alternate shorter instruction encodings.

  * The gold linker has a new --debug=plugin option for easier debugging
    of plugin-related problems.

  * The gold linker now supports the -z keep_text_section_prefix option.

  * The gold linker now has support for .note.gnu.property sections
    (from Linux ABI extensions).

  * Add gold linker now has support for Intel's Indirect Branch Tracking
    (IBT) and Shadow Stack instructions.
2018-07-30 19:37:51 +00:00
ryoon
9c5ab8f67e Update to 2.30
Changelog:
  In the assembler:

     * Add support for location views in DWARF debug line information.

  In the BFD linker:

    * Add -z separate-code to generate separate code PT_LOAD segment.

    * Add "-z undefs" command line option as the inverse of the "-z defs"
option.

    * Add -z globalaudit command line option to force audit libraries to be run
      for every dynamic object loaded by an executable - provided that the
loader
      supports this functionality.

    * Tighten linker script grammar around file name specifiers to prevent the
use
      of SORT_BY_ALIGNMENT and SORT_BY_INIT_PRIORITY on filenames.  These would
      previously be accepted but had no effect.

    * The EXCLUDE_FILE directive can now be placed within any SORT_* directive
      within input section lists.

  In the GOLD linker:

    * Add support for .MIPS.options sections (MIPS only).

    * Add support for compound relocations (MIPS only).

    * Add --emit-stub-syms, --no-tls-optimize, --tls-get-addr-optimize options
      (PowerPC only).

    * Add -z text-unlikely-segment option.

    * Add plugin support for adding new input files
(LDPT_REGISTER_NEW_INPUT_HOOK).

  In the utilities:

    * Add --debug-dump=links option to readelf and --dwarf=links option to
objdump
      which displays the contents of any .gnu_debuglink or .gnu_debugaltlink
      sections.

    * Add a --debug-dump=follow-links option to readelf and a
--dwarf=follow-links
      option to objdump which causes indirect links into separate debug info
files
      to be followed when dumping other DWARF sections.
2018-03-03 22:35:51 +00:00
ryoon
e348f938e2 Update to 2.29.1
Changelog:
Some improvements about ARMv7 and ARMv8 in gas
2017-12-10 01:12:09 +00:00
ryoon
4f7321ed26 Update to 2.29
* No significant change for ARM
2017-08-16 14:38:55 +00:00
ryoon
15ea1acfd5 Update to 3.28
Changelog:
GAS:
Changes in 2.28:

* Add support for the RISC-V architecture.

* Add support for the ARM Cortex-M23 and Cortex-M33 processors.

LD:
Changes in 2.28:

* The EXCLUDE_FILE linker script construct can now be applied outside of the
  section list in order for the exclusions to apply over all input sections in
  the list.

* Add support for the RISC-V architecture.

* The command line option --no-eh-frame-hdr can now be used in ELF based
  linkers to disable the automatic generation of .eh_frame_hdr sections.

* Add --in-implib=<infile> to the ARM linker to enable specifying a set of
  Secure Gateway veneers that must exist in the output import library specified
  by --out-implib=<outfile> and the address they must have.  As such,
  --in-implib is only supported in combination with --cmse-implib.

* Extended the --out-implib=<file> option, previously restricted to x86 PE
  targets, to any ELF based target.  This allows the generation of an import
  library for an ELF executable, which can then be used by another application
  to link against the executable.

BINUTILS:
Changes in 2.28:

* Add support for locating separate debug info files using the build-id
  method, where the separate file has a name based upon the build-id of
  the original file.

* This version of binutils fixes a problem with PowerPC VLE 16A and 16D
  relocations which were functionally swapped, for example,
  R_PPC_VLE_HA16A performed like R_PPC_VLE_HA16D while R_PPC_VLE_HA16D
  performed like R_PPC_VLE_HA16A.  This could have been fixed by
  renumbering relocations, which would keep object files created by an
  older version of gas compatible with a newer ld.  However, that would
  require an ABI update, affecting other assemblers and linkers that
  create and process the relocations correctly.  It is recommended that
  all VLE object files be recompiled, but ld can modify the relocations
  if --vle-reloc-fixup is passed to ld.  If the new ld command line
  option is not used, ld will ld warn on finding relocations inconsistent
  with the instructions being relocated.

* The nm program has a new command line option (--with-version-strings)
  which will display a symbol's version information, if any, after the
  symbol's name.

* The ARC port of objdump now accepts a -M option to specify the extra
  instruction class(es) that should be disassembled.

* The --remove-section option for objcopy and strip now accepts section
  patterns starting with an exclamation point to indicate a non-matching
  section.  A non-matching section is removed from the set of sections
  matched by an earlier --remove-section pattern.

* The --only-section option for objcopy now accepts section patterns
  starting with an exclamation point to indicate a non-matching section.
  A non-matching section is removed from the set of sections matched by
  an earlier --only-section pattern.

* New --remove-relocations=SECTIONPATTERN option for objcopy and strip.
  This option can be used to remove sections containing relocations.
  The SECTIONPATTERN is the section to which the relocations apply, not
  the relocation section itself.
2017-03-30 19:21:26 +00:00
ryoon
bcdaa5e3b9 Update to 2.27
* Update to the latest release
* Remove merged patches
2016-10-19 12:44:44 +00:00
ryoon
963c808570 Update to 2.26
Changelog:
Changes in 2.26:

* Add option to objcopy to insert new symbols into a file:
  --add-symbol <name>=[<section>:]<value>[,<flags>]

* Add support for the ARC EM/HS, and ARC600/700 architectures.

* Extend objcopy --compress-debug-sections option to support
  --compress-debug-sections=[none|zlib|zlib-gnu|zlib-gabi] for ELF
  targets.

* Add --update-section option to objcopy.

* Add --output-separator option to strings.
2016-01-30 22:20:51 +00:00
ryoon
83096046e5 Import cross-arm-none-eabi-binutils-2.25.1 as cross/arm-none-eabi-binutils.
Cross binutils for bare metal ARM EABI environment.
2015-10-11 01:14:27 +00:00