Skip to content

Conversation

@mochaaP
Copy link
Contributor

@mochaaP mochaaP commented Dec 8, 2025

Todo:

  • Should we add a common BuildOption for COMDAT folding (/Gy/-ffunction-section + /Gw/-fdata-sections for compilers, /OPT:REF/-Wl,--gc-sections/-Wl,-dead_strip + /OPT:{ICF,SAFEICF,NOICF}1/-Wl,--icf={all,safe,none}2/-Wl,-no_deduplicate3 for linkers)
  • How can we ensure b_lto is also on if b_pgo is on?
  • What about icl.exe?

Footnotes

  1. /OPT:SAFEICF is lld-link only

  2. ld.gold and ld.lld supports ICF, but not ld.bfd

  3. newer ld64 that supports ICF have this on by default, and only have an option for disabling it (-no_deduplicate or -O0 will trigger this, see ld64/src/ld/Options.cpp)

@dcbaker
Copy link
Member

dcbaker commented Dec 8, 2025

What about icl.exe?

Are we talking about the legacy icl.exe that pairs with icc, or one of the oneAPI (LLVM based) compilers? If we're talking the legacy one leave it be. The oneAPI one is based on clang-cl, so we should be able to do whatever clang-cl does.

@mochaaP
Copy link
Contributor Author

mochaaP commented Dec 8, 2025

Are we talking about the legacy icl.exe that pairs with icc, or one of the oneAPI (LLVM based) compilers?

the legacy one. i'm fine with ignoring it.

mochaaP added a commit to mcha-forks/zydis that referenced this pull request Dec 9, 2025
mochaaP added a commit to mcha-forks/zycore-c that referenced this pull request Dec 9, 2025
mochaaP added a commit to mcha-forks/zydis that referenced this pull request Dec 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants