Release 2.9.0 Dana

34 views
Skip to first unread message

Diana Chen

unread,
Dec 10, 2014, 4:09:37 AM12/10/14
to mcli...@googlegroups.com
Hi, 

MCLinker release 2.9.0 Dana is now available! Package can be downloaded here.

In this release we've refined the coding style in all files. Code in MCLinker now follows the unified coding style and a coding style checker is introduced to help checking the style. Also there are two major functionality changes. MCLinker supports debug string de-duplication to reduce the outputs' code size and enhance ARM exidx coverage which exidx entries are sorted according to the corresponding text fragments. Please refer to the change log for the detailed information. 

2014-11-24 Diana Chen <mys...@gmail.com>
  * Executive Summary:
  1. Migrate to LLVM 3.6svn.
  2. Refine coding style.
  3. Support debug string de-duplication to reduce the outputs' code size.
  4. Enhance ARM exidx coverage.

  * Command Line Options and Building System:
  1. Simplify software versioning to `MAJOR.MINOR.MICRO-BUILD'.
  2. Build with `-Werror' enabled by default.
  3. Statically link utils/zlib/crc32 if zlib is not specified when building.
  4. Support GNU emulation argument for MIPS64.
  5. Support `-v/-Version'.

  * Linker Script:
  1. Support INPUT command.

  * Coding Style:
  1. Steadily switch to Google C++ style.
  2. Switch to LLVM coding style for include style.
  3. Support `make cpplint' for style check.

  * Debug string De-duplication:
  1. Merge strings in .debug_str sections when linking for executables or shared
     objects.
  2. Addc class DebugString and MergedStringTable.
  3. Add Relocator::getDebugStringOffset and Relocator::applyDebugStringOffset
     to correct the offset after debug strings have been merged.
  4. Identify DebugString as a kind of data in LDSection.

  * Target Backends:
  1. Support special sections those end with .rel.ro suffix as RELRO.
  2. ARM: Add exception table data structures, ARMExSectionTuple, ARMInputExMap
     and ARMExData.
  3. ARM: Add ARMGNULDBackend::scanInputExceptionSections to scan the exception
     related sections.
  4. ARM: Sort exidx entries according to the corresponding text fragments.

  * ADT:
  1. Add ilist sort function with better performance on sorting llvm::iplist.

  * Linking process:
  1. Add section merge hooks, TargetLDBackend::preMergeSections and
     TargetLDBackend::postMergeSections.

Thanks,
-Diana
Reply all
Reply to author
Forward
0 new messages