<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/src/test/run-make/llvm-phase, branch master</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=master</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=master'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2018-01-19T19:27:10+00:00</updated>
<entry>
<title>Allow runtime switching between trans backends</title>
<updated>2018-01-19T19:27:10+00:00</updated>
<author>
<name>bjorn3</name>
<email>bjorn3@users.noreply.github.com</email>
</author>
<published>2017-10-30T17:42:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=74c92c556264c703b875645bad3f2738a37940fa'/>
<id>urn:sha1:74c92c556264c703b875645bad3f2738a37940fa</id>
<content type='text'>
</content>
</entry>
<entry>
<title>rustc: Default 32 codegen units at O0</title>
<updated>2017-09-26T15:18:03+00:00</updated>
<author>
<name>Alex Crichton</name>
<email>alex@alexcrichton.com</email>
</author>
<published>2017-09-25T19:26:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=9e35b797b158d2e437bfee6376f852fd87861286'/>
<id>urn:sha1:9e35b797b158d2e437bfee6376f852fd87861286</id>
<content type='text'>
This commit changes the default of rustc to use 32 codegen units when compiling
in debug mode, typically an opt-level=0 compilation. Since their inception
codegen units have matured quite a bit, gaining features such as:

* Parallel translation and codegen enabling codegen units to get worked on even
  more quickly.
* Deterministic and reliable partitioning through the same infrastructure as
  incremental compilation.
* Global rate limiting through the `jobserver` crate to avoid overloading the
  system.

The largest benefit of codegen units has forever been faster compilation through
parallel processing of modules on the LLVM side of things, using all the cores
available on build machines that typically have many available. Some downsides
have been fixed through the features above, but the major downside remaining is
that using codegen units reduces opportunities for inlining and optimization.
This, however, doesn't matter much during debug builds!

In this commit the default number of codegen units for debug builds has been
raised from 1 to 32. This should enable most `cargo build` compiles that are
bottlenecked on translation and/or code generation to immediately see speedups
through parallelization on available cores.

Work is being done to *always* enable multiple codegen units (and therefore
parallel codegen) but it requires #44841 at least to be landed and stabilized,
but stay tuned if you're interested in that aspect!
</content>
</entry>
<entry>
<title>async-llvm(29): Adapt run-make/llvm-phase test case to LLVM module not being available in memory.</title>
<updated>2017-08-01T13:57:38+00:00</updated>
<author>
<name>Michael Woerister</name>
<email>michaelwoerister@posteo</email>
</author>
<published>2017-08-01T13:57:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=6468cad977d4c81d30ba000633eaa43bc18591f9'/>
<id>urn:sha1:6468cad977d4c81d30ba000633eaa43bc18591f9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>report the total number of errors on compilation failure</title>
<updated>2017-07-02T13:16:44+00:00</updated>
<author>
<name>Ariel Ben-Yehuda</name>
<email>ariel.byd@gmail.com</email>
</author>
<published>2017-07-02T13:09:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=fb7ab9e43da3727e1c58faf9451857968270dc77'/>
<id>urn:sha1:fb7ab9e43da3727e1c58faf9451857968270dc77</id>
<content type='text'>
Prior to this PR, when we aborted because a "critical pass" failed, we
displayed the number of errors from that critical pass. While that's the
number of errors that caused compilation to abort in *that place*,
that's not what people really want to know. Instead, always report the
total number of errors, and don't bother to track the number of errors
from the last pass that failed.

This changes the compiler driver API to handle errors more smoothly,
and therefore is a compiler-api-[breaking-change].

Fixes #42793.
</content>
</entry>
<entry>
<title>test: Don't write files into the source tree</title>
<updated>2016-10-14T19:48:53+00:00</updated>
<author>
<name>Alex Crichton</name>
<email>alex@alexcrichton.com</email>
</author>
<published>2016-10-14T19:48:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=094c3a2c785c251dffb9cadbbad02d7b1e4afc4d'/>
<id>urn:sha1:094c3a2c785c251dffb9cadbbad02d7b1e4afc4d</id>
<content type='text'>
Tweak a few run-make tests to emit files in the output directories, not directly
in the source tree.
</content>
</entry>
<entry>
<title>Allow supplying an error destination via the compiler driver</title>
<updated>2016-09-28T03:20:30+00:00</updated>
<author>
<name>Nick Cameron</name>
<email>ncameron@mozilla.com</email>
</author>
<published>2016-09-26T22:45:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=e8a4db25acde9d2d23a4ebfb464d283d495b5b8d'/>
<id>urn:sha1:e8a4db25acde9d2d23a4ebfb464d283d495b5b8d</id>
<content type='text'>
Allows replacing stderr with a buffer from the client.

Also, some refactoring around run_compiler.
</content>
</entry>
<entry>
<title>Modify trans to skip generating `.o` files</title>
<updated>2016-07-28T16:05:45+00:00</updated>
<author>
<name>Niko Matsakis</name>
<email>niko@alum.mit.edu</email>
</author>
<published>2016-07-21T16:49:59+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=58d4b8edd319d0f0d76024504cdfc74f89a001b1'/>
<id>urn:sha1:58d4b8edd319d0f0d76024504cdfc74f89a001b1</id>
<content type='text'>
This checks the `previous_work_products` data from the dep-graph and
tries to simply copy a `.o` file if possible.  We also add new
work-products into the dep-graph, and create edges to/from the dep-node
for a work-product.
</content>
</entry>
<entry>
<title>Added new compilation phase and test</title>
<updated>2016-07-04T06:47:19+00:00</updated>
<author>
<name>Will Crichton</name>
<email>wcrichto@stanford.edu</email>
</author>
<published>2016-07-01T08:54:37+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=eaf31099edab0affcde770dee00f8df1c68b6aab'/>
<id>urn:sha1:eaf31099edab0affcde770dee00f8df1c68b6aab</id>
<content type='text'>
</content>
</entry>
</feed>
