binutils: backport xtensa ld optimizations
authorMax Filippov <jcmvbkbc@gmail.com>
Thu, 9 Apr 2015 16:55:51 +0000 (19:55 +0300)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Thu, 9 Apr 2015 19:52:36 +0000 (21:52 +0200)
commitc6d9a92dbd173902b0fccd04ba613dcdce9494f8
tree2ab7d3a9da1eae1dfbe39b68e9913013a234b42e
parentf6ee0fff287ad0efd8c246379796a4b8629751a4
binutils: backport xtensa ld optimizations

This series optimizes most time-consuming algorithms and data structures
in the xtensa link-time relaxation code, leaving relaxation logic intact.

Speedup linking typical linux kernel is ~8 times (1 minute instead of 8),
pathological cases (linking objects partially linked without relaxation)
are handled ~60 times faster (1 minute instead of an hour).

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/binutils/2.24/906-xtensa-optimize-check_section_ebb_pcrels_fit.patch [new file with mode: 0644]
package/binutils/2.24/907-xtensa-optimize-removed_by_actions.patch [new file with mode: 0644]
package/binutils/2.24/908-xtensa-optimize-find_removed_literal.patch [new file with mode: 0644]
package/binutils/2.24/909-xtensa-replace-action-list-with-splay-tree.patch [new file with mode: 0644]
package/binutils/2.25/906-xtensa-optimize-check_section_ebb_pcrels_fit.patch [new file with mode: 0644]
package/binutils/2.25/907-xtensa-optimize-removed_by_actions.patch [new file with mode: 0644]
package/binutils/2.25/908-xtensa-optimize-find_removed_literal.patch [new file with mode: 0644]
package/binutils/2.25/909-xtensa-replace-action-list-with-splay-tree.patch [new file with mode: 0644]