<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/117029>117029</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
Absolutely massive+duplicate binaries in each clang build
</td>
</tr>
<tr>
<th>Labels</th>
<td>
clang
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
pps83
</td>
</tr>
</table>
<pre>
Hello Llvm,
why are all the clang/llvm builds ship these absolutely massive binaries that are almost binary exact copies of each other? Like intel's icx 2025 has `clang.exe`, `clang++.exe`, `clang-cl.exe`, `clang-cpp.exe`. These four binaries are each 110MB in size, by the diff between these is just like a few kilobytes. Similar story goes with 76MB sized `ld.lld.exe`, `lld.exe`, `lld-link.exe`. In the same manner, clang that ships with MS visual studio has these binaries at 119MB and 88MB and other smaller almost identical binaries.
Shouldn't all these be small binaries that simply link to a shared .dll/.so to avoid all that duplication?
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJxsU82SszgMfBpzUYWyTUKSA4fJ9xW1WzU5zb6AwUrQjMAUMsmwT78FYX52dy4JJdutbrXaidC1QyzU7qR2vxM3xiYMRd_LIUuq4KfiD2QO8My3VtlfSv9W-unxe28mcAOCY4bYINTsuquyJfOthWok9gLSUD8fCoKrJPAYkSdo5643hIo6NxAKxMbFFasNEh8HE-C7qyPUoZ_vhAugqxsIscFBZSU80xsCdRFZ2b0A1e9gtd1B4wRUrhc6Kb6jyrWyvz5Lyp6UPf1wsKn5x2rfr-UU_lqUXMI4fHGfaS_EjNHnE1AHQn_jDFFNy1w8XS5QYbwjdussSOB1lAg8S3BwwTu8EYdqiigpvFBL7AaQGIYJrgEF7hQb2Ofn0wLuZ3bsU2b_b8Y_FTZM3dungj8XCiCuRWhd1-Ew31yUPlyYHVv7nV_gRjI6Bomjp7BM9iHgS30EY47nE7jOw-GwfiwegbSOGYcPU8ljF6l2_Pk6_b5OL00Y2XfK7uPHSs2N8AHzn10RanueYJYGMYADadyAHlLPrGyZSljKt0B-BXMR_Ngz1S5S6FRWJr7I_DE7ugQLs8-ssccsM0lT6OxQZ_nBX2qf1VVmTI7e1JddXrkazTFPqLDabo2x2hy1NTrd5ntndH7Qe3vIK12prcbWEadzFNIwXBMSGbEwZq_tMWFXIcuSOGvXnbRz-IZifrCpxquorWaSKF8QkSJj8fS_FCl7-hD2zRfqHkv5cHZJYzIOXDQx9qKyJ2VLZcsrxWas0jq0a27Xv00_hFeso7LlwlyULVfyt8L-EwAA__-C-GMi">