Добавление символов вокруг раздела отладки приводит к увеличению размера двоичного файла - PullRequest
1 голос
/ 19 сентября 2019

Я хотел бы добавить начальный и конечный символы вокруг каждого раздела отладочной информации, чтобы я мог получить к ним доступ из своей программы.Я попробовал следующую схему:

.debug.info ALIGN(4K) : {
    DEBUG_INFO_START = .;
    *(.debug.info)
    DEBUG_INFO_END = .;
}
.debug.abbrev ALIGN(4K) : {
    DEBUG_ABBREV_START = .;
    *(.debug.abbrev)
    DEBUG_ABBREV_END = .;
}
/* etc. */

Но это приводит к увеличению размера каждого раздела (включая .text, .rodata и т. Д.) И получающегося двоичного файла в три раза.Что может быть причиной этого?Как видно из дампов ниже, информация об отладке включена в обоих случаях, так что это не является причиной увеличения размера.

Я использую Zig и LLVM toolchain.

Ссылка на весь скрипт ссылки. Ссылка на дамп двоичного файла без изменений скрипта ссылки, ссылка на дамп с модификациями.

...