Работает ли монолитная оптимизация времени соединения со статическими библиотеками? - PullRequest
0 голосов
/ 11 октября 2019

В этой статье обсуждается, как объектные файлы могут содержать IR LLVM, который используется для оптимизации во время соединения. Но что, если компоновщик компилирует проект, который включает статическую библиотеку, есть ли у статических библиотек эта информация? Если да, то при каких обстоятельствах?

1 Ответ

0 голосов
/ 15 октября 2019

Да. Статические библиотеки могут также содержать llvm-IR-bitcode.

A. Шаг для сборки статических библиотек с помощью llvm-IR-bitcode

  1. В проекте Xcode Static Lib:
    Build Settings->Enable Bitcode, переключиться на Yes
  2. Product->Archive

B. Проверьте, содержит ли статическая библиотека llvm-IR-битовый код или нет.

  1. otool -l libDemo.a
  2. В выходных данных найдите __bitcode и проверьте, больше ли sizeчем 000001 или нет.
    , если size> 000001: тогда статическая библиотека содержит llvm-IR-битовый код
    иначе: статическая библиотека не содержит llvm-IR-битовый код.

Желаю, чтобы это ответило на ваш вопрос.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...