Investigate LRA in GCC for ARM

Registered by Matthew Gretton-Dann

LRA is a proposed replacement to reload in GCC. We should investigate whether it actually provides a benefit to x86 and x86_64, and if it does then work out what benefit turning it on will give to ARM, and the steps needed to turn it on.

Blueprint information

Status:
Complete
Approver:
Michael Hope
Priority:
High
Drafter:
Matthew Gretton-Dann
Direction:
Approved
Assignee:
Brice Dobry
Definition:
Approved
Series goal:
Accepted for 4.7
Implementation:
Informational Informational
Milestone target:
milestone icon backlog
Started by
Matthew Gretton-Dann
Completed by
Matthew Gretton-Dann

Related branches

Sprints

Whiteboard

[matthew-gretton-dann 2013-03-20] This is now required for 4.9 further investigation not needed.

Meta:
Headline: Investigate GCC's new LRA infrastructure and examine potential benefit for ARM
Acceptance: Report on LRA's benefits
Roadmap id: CARD-304

(?)

Work Items

Work items:
Benchmark x86 reload vs LRA: DONE
Benchmark x86_64 reload vs LRA: POSTPONED
Study LRA changes: DONE
Bootstrap toolchain from last working revision of "lra" branch for ARM: DONE
Resolve ICE when building eglibc for above: DONE
Bootstrap toolchain from HEAD of "lra" branch for ARM: DONE
Resolve ICE when building libgcc for above: DONE
Benchmark ARM reload vs. LRA: INPROGRESS
Add target hooks for improved LRA on ARM: INPROGRESS
Benchmark ARM reload vs. optimized LRA: TODO
Merge lra branch with linaro trunk for testing: INPROGRESS

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.