aboutsummaryrefslogtreecommitdiff
path: root/lib/compiler_rt/extendhfsf2.zig
AgeCommit message (Collapse)Author
2025-03-05Remove uses of deprecated callconv aliasesLinus Groh
2024-08-27lib,test,tools,doc: update usages of @exportmlugg
2023-06-24all: migrate code to new cast builtin syntaxmlugg
Most of this migration was performed automatically with `zig fmt`. There were a few exceptions which I had to manually fix: * `@alignCast` and `@addrSpaceCast` cannot be automatically rewritten * `@truncate`'s fixup is incorrect for vectors * Test cases are not formatted, and their error locations change
2023-04-05compiler_rt: change the abi of f16 on mac to depend on the other typeJacob Young
2022-12-28compiler-rt: Set the symbol visibilityLuuk de Gram
When we're compiling compiler_rt for any WebAssembly target, we do not want to expose all the compiler-rt functions to the host runtime. By setting the visibility of all exports to `hidden`, we allow the linker to resolve the symbols during linktime, while not expose the functions to the host runtime. This also means the linker can properly garbage collect any compiler-rt function that does not get resolved. The symbol visibility for all target remains the same as before: `default`.
2022-12-05compiler_rt: avoid using weak aliasesAndrew Kelley
This is a partial revert of 0d533433e21621177fb291e2a4901bee11834501, which regressed this behavior. The idea here is to avoid aliases, which happens when the same function is exported with multiple names. The problem with aliases is that weak aliases don't seem to work, causing symbol collisions when multiple of the same symbol are provided, despite the desired behavior that weak symbols are overridden. In this case we export redundant functions with different names. Thanks to -ffunction-sections, the unused functions will be garbage-collected at link time. This leaves us with the best of both worlds: Zig's compiler-rt will provide both sets of symbols, and it will be binary-compatible with different compilers that expect different names, while still resulting in binaries without garbage.
2022-10-13compiler_rt: Add missing `f16` functionsCody Tapscott
This change also exposes some of the existing functions under both the PPC-style names symbols and the compiler-rt-style names, since Zig currently lowers softfloat calls to the latter.
2022-06-17compiler-rt: fix logic for choosing `__gnu_{f2h,h2f}_ieee`Andrew Kelley
wasm32-wasi-musl wants the standard symbol names however Linux requires the `__gnu_*` flavors. I did not find any authoritative source on what decides which symbol flavors to use. If we run into more trouble in the future we can go back to having both.
2022-06-17compiler-rt: fix testsAndrew Kelley
2022-06-17compiler-rt: break up functions even moreAndrew Kelley
The purpose of this branch is to switch to using an object file for each independent function, in order to make linking simpler - instead of relying on `-ffunction-sections` and `--gc-sections`, which involves the linker doing the work of linking everything and then undoing work via garbage collection, this will allow the linker to only include the compilation units that are depended on in the first place. This commit makes progress towards that goal.