This is the mail archive of the
mailing list for the GCC project.
guidance for GSoC 2016 under GCC
- From: vivek pandya <vivekvpandya at gmail dot com>
- To: gcc at gcc dot gnu dot org
- Date: Sun, 3 Jan 2016 23:21:38 +0530
- Subject: guidance for GSoC 2016 under GCC
- Authentication-results: sourceware.org; auth=none
Hello GCC developers,
I would like to work on one of the following idea in GSoC 2016 for GCC.
Function Reordering (Improvement) with LTO
Inter-procedural value range propagation pass
Implement tree level section anchors to improve code generation at ARM/PPC.
I have done some reading for first and second topic. I would like your guidance.
For first topic I have read Martin's master thesis and as far as I
understand currently he has implemented function reordering with PGO
support but this project would be using LTO support. Am I thinking it
For second project I have read the IPCP.c file in gcc source code
which implements Inter-procedural constant propagation with call
graphs and jump functions. According to Chapter 11, page 664 of
Optimizing Compilers for Modern Architectures: A Dependence-based
Approach book range propagation pass can be designed by extending
IPCP. Here extensions to IPCP would be deciding ranges of variable
from for loops, const assignment or if/else statement and modifying
jump functions so that ranges can be calculated base on operations.
Also we may use data structure for range as used in tree-vrp.c of gcc.
For third project I have not started studying about it. Please suggest
Apart from this I have learned how to write simple passes and plugins
for gcc and its related data structures ( learned from Diego Novillo's
slide ). I have also written some simple optimization passes with LLVM
Please provide more information or experimental patches to study.
P.S : Actually I tried to contact Mr. Jan Hubicka as mentioned on idea
page but it seems that he is not reachable on his mail address
firstname.lastname@example.org that is why I have mail to gcc dev list.