zig/std/special/compiler_rt
Shawn Landden 1fdb24827f
breaking changes to all bit manipulation intrinsics
* `@clz`, `@ctz`, `@popCount`, `@bswap`, `@bitreverse` now
   have a type parameter
 * rename @bitreverse to @bitReverse
 * rename @bswap to @byteSwap

Closes #2119
Closes #2120
2019-05-16 16:37:58 -04:00
..
2019-05-10 13:26:33 +02:00
2019-05-10 13:26:33 +02:00
2019-05-10 13:26:33 +02:00
2019-04-05 18:10:19 -04:00
2019-04-04 15:38:09 -04:00
2019-05-08 23:57:09 +02:00
2019-05-10 13:26:33 +02:00
2019-05-10 13:26:33 +02:00
2019-04-29 18:55:20 -04:00
2019-04-29 18:55:20 -04:00
2019-03-22 17:46:49 -04:00
2019-03-05 23:09:00 -05:00
2019-05-08 23:57:09 +02:00

This compiler-rt library is ported from LLVM.

It's needed because LLVM emits library calls to compiler-rt when hardware lacks functionality, for example, 64-bit integer multiplication on 32-bit x86.

This library is automatically built as-needed for the compilation target and then statically linked and therefore is a transparent dependency for the programmer.

Any bugs should be solved by trying to duplicate the bug upstream.

  • If the bug exists upstream, get it fixed with the LLVM team and then port the fix downstream to Zig.
  • If the bug only exists in Zig, something went wrong porting the code, and you can run the C code and Zig code side by side in a debugger to figure out what's happening differently.