Enable additional toolchain related optimizations in Linaro Android

Registered by Bernhard Rosenkraenzer

Enable additional toolchain related optimizations in Linaro Android

Blueprint information

Status:
Complete
Approver:
Zach Pfeffer
Priority:
Medium
Drafter:
Bernhard Rosenkraenzer
Direction:
Approved
Assignee:
Bernhard Rosenkraenzer
Definition:
Approved
Series goal:
Proposed for 2011q2
Implementation:
Implemented
Milestone target:
milestone icon 11.10
Started by
Bernhard Rosenkraenzer
Completed by
Tony Mansson

Related branches

Sprints

Whiteboard

Headline:
Android is built with more compiler optimizations

Acceptance:
More compiler optimizations are enabled, system still works and runs faster than before - or all compiler optimizations have been tried and proven not to have positive effects.

(?)

Work Items

Work items:
Enable --hash-style=gnu in the builds: DONE
Check if any relevant libraries (skia, opengl, ...?) can benefit from -Bsymbolic-functions [result: doesn't make a visible difference]: DONE
Check if LTO optimizations can be used with any relevant parts [result: still rather buggy, got to retry when there's a newer gcc and binutils]: DONE
Add -fvisibility-inlines-hidden: DONE
Investigate Graphite optimizations that aren't enabled even at O3 -- -fgraphite-identity: TODO
-floop-block -floop-interchage -floop-strip-mine -ftree-loop-distribution -ftree-loop-linear [result: very minor improvement]: DONE
Investigate SMS optimizations that aren't enabled even at O3 -- -fmodulo-sched and: TODO
-fmodulo-sched -fmodulo-sched-allow-regmoves [result: very minor improvement]: DONE
Fix remaining strict-aliasing violations: DONE
Remove -fno-strict-aliasing where it isn't needed (anymore): DONE
Enable CPU specific optimizations for every board: DONE

This blueprint contains Public information 
Everyone can see this information.