输入二进制的要求

  1. BOLT 目前只能处理 x86_64 和 AArch64 (RISCV的支持社区还在进行) ELF 二进制
  2. 二进制至少包含一个未剥离的符号表
  3. 在链接时使能保留重定位(--emit-relocs 或 -q )选项,为了获得最大的性能提升
  4. 在编译GCC8及以上版本待优化的二进制需添加 -fno-reorder-blocks-and-partition 标志
  5. 在编译时添加 -gdwarf-4,因为 Dwarf v5 目前支持的还不完善