Andrew Kelley 597082adf4 Merge remote-tracking branch 'origin/master' into stage2-whole-file-astgen
Conflicts:
 * build.zig
 * src/Compilation.zig
 * src/codegen/spirv/spec.zig
 * src/link/SpirV.zig
 * test/stage2/darwin.zig
   - this one might be problematic; start.zig looks for `main` in the
     root source file, not `_main`. Not sure why there is an underscore
     there in master branch.
2021-05-15 21:44:38 -07:00
..
2020-12-31 15:45:24 -08:00
2021-02-24 21:29:23 -07:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2021-05-08 15:15:30 +03:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2019-09-25 23:35:41 -04:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08:00
2020-12-31 15:45:24 -08: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.