This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: GSoC


On Mon, Feb 26, 2018 at 5:35 PM, Dushyant Pratap Singh
<iamdushyant865@gmail.com> wrote:
> Hello GCC community,
> My name is Dushyant and I am interested in Gsoc at GCC .I am pursuing
> Integrated B.Tech (Computer Science) and M.Tech (software engineering) from
> Gautam Buddha University, India. Currently I am in 4th year of the
> programme.
>
> I have experience in Competitive Programming (primary language C++) and
> have won and participated in many of the Algorithmic & Data Structures
> competitions.
>
> Here is my Linkedin:
> https://www.linkedin.com/in/dushyant-pratap-singh-044658128/
>
> I have taken a course on Compiler Design in my last semester in which i
> scored A+ grade.
>
> Project that i am most interested in is Textual Representation of LTO
> Object Files.
>
> In my compiler lab I learned about the Compilation process how the
> preproccessed files (.i file) ,assembly code (.s file) ,object code (.o
> file) and finally executable file(a.out) were generated (as they were
> temporary files they needed an extra GCC flag -save-temps to store
> "temporary files" permanently) using gcc –Wall –save-temps prog1.c –o prog1
> .
>
> I have started to investigate on converting binary files to human readable
> forms.It would be great if someone could explain how to get started with
> the process.

The suggested way was to handle things similar to the gcov tools -- piggy-back
on the existing {lto,tree}-streamer-in.c files, #ifdef'ing relevant parts so you
can link them into a new lto-dump "driver" binary.

To get started you might want to look at lto/lto-object.c and/or follow the
lto1 binary when it processes its input files.

Eventually integrating the dumping of a textual representation into
the lto1 binary itself would also be feasible.  Still the actual dumping
should probably be intermangled with the binary reading code for
ease of maintainance.

Note the project isn't about providing a way of editing the textual
representation and reading that back in but only for for inspection / debugging.

There are several interesting pieces of information in the LTO IL so
having a way to dump only parts with a specifyable level of detail
is desirable (thus the suggestion to do this in a new binary rather
than lto1).

Thanks for the interest in this project!

Richard.


> Regards
>
> Dushyant Pratap Singh


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]