Skip to content

Instantly share code, notes, and snippets.

@hrisearch
hrisearch / LTO_dump_tool_project_GCC_GSOC_2018.md
Last active August 14, 2018 14:12
This document contains the list commits made for the LTO dump tool project for GCC under GSOC 2018.

LTO Dump Tool Project

The purpose of this dump tool is to analyze the LTO object files.

Link to Repository

https://github.com/hrisearch/gcc/tree/lto-dump-tool-v4

Abstract

The LTO object file is a regular elf file with sections containing LTO byte-code. A LTO object file contains various sections for storing command line options, symbol table, global declarations and types, function bodies in GIMPLE, call graph, etc. There are couple of limitations of the byte code format: 1] It is not self descriptive, which makes it harder to debug. 2] The byte code is essentially a “serialized” version of in-memory representations, which makes it prone to break across versions. The purpose of this project is to create a dump tool for easily analyzing LTO object files similar to readelf or objdump -d for regular elf object files.