Files
zig/src
Andrew Kelley 5cd548e530 Compilation: multi-thread compiler-rt
compiler_rt_lib and compiler_rt_obj are extracted from the generic
JobQueue into simple boolean flags, and then handled explicitly inside
performAllTheWork().

Introduced generic handling of allocation failure and made
setMiscFailure not return a possible error.

Building the compiler-rt static library now takes advantage of
Compilation's ThreadPool. This introduced a problem, however, because
now each of the object files of compiler-rt all perform AstGen for the
full standard library and compiler-rt files. Even though all of them end
up being cache hits except for the first ones, this is wasteful - O(N*M)
where N is number of compilation units inside compiler-rt and M is the
number of .zig files in the standard library and compiler-rt combined.

More importantly, however, it causes a deadlock, because each thread
interacts with a file system lock for doing AstGen on files, and threads
end up waiting for each other. This will need to be handled with a
process-level file caching system, or some other creative solution.
2022-06-17 16:38:59 -07:00
..
2022-04-27 16:45:23 -07:00
2022-05-13 16:43:59 -04:00
2022-06-16 15:27:30 -04:00
2022-06-11 11:02:56 +03:00
2022-06-11 11:02:56 +03:00
2022-06-09 15:37:16 -07:00
2022-01-07 00:06:06 -05:00
2022-06-11 11:02:56 +03:00
2021-09-24 13:39:20 -04:00