<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/src/bootstrap/native.rs, branch 1.66.1</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.66.1</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.66.1'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2022-10-10T06:18:58+00:00</updated>
<entry>
<title>Auto merge of #94381 - Kobzol:llvm-bolt, r=Mark-Simulacrum</title>
<updated>2022-10-10T06:18:58+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2022-10-10T06:18:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=8dfb40722da197e77a33a19eb9d3fd6512831341'/>
<id>urn:sha1:8dfb40722da197e77a33a19eb9d3fd6512831341</id>
<content type='text'>
Use BOLT in CI to optimize LLVM

This PR adds an optimization step in the Linux `dist` CI pipeline that uses [BOLT](https://github.com/llvm/llvm-project/tree/main/bolt) to optimize the `libLLVM.so` library built by boostrap.

Steps:
- [x] Use LLVM 15 as a bootstrap compiler and use it to build BOLT
- [x] Compile LLVM with support for relocations (`-DCMAKE_SHARED_LINKER_FLAGS="-Wl,-q"`)
- [x] Gather profile data using instrumented LLVM
- [x] Apply profile to LLVM that has already been PGOfied
- [x] Run with BOLT profiling on more benchmarks
- [x] Decide on the order of optimization (PGO -&gt; BOLT?)
- [x] Decide how we should get `bolt` (currently we use the host `bolt`)
- [x] Clean up

The latest perf results can be found [here](https://github.com/rust-lang/rust/pull/94381#issuecomment-1258269440). The current CI build time with BOLT applied is around 1h 55 minutes.
</content>
</entry>
<entry>
<title>Use BOLT in x64 dist CI to optimize LLVM</title>
<updated>2022-10-09T09:31:09+00:00</updated>
<author>
<name>Jakub Beránek</name>
<email>berykubik@gmail.com</email>
</author>
<published>2022-10-02T07:44:04+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=cc475f5ef2988e9db2e3ce07bd4abd4d4975f3e7'/>
<id>urn:sha1:cc475f5ef2988e9db2e3ce07bd4abd4d4975f3e7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Don't run llvm-config in dry runs</title>
<updated>2022-10-07T22:27:48+00:00</updated>
<author>
<name>Josh Stone</name>
<email>jistone@redhat.com</email>
</author>
<published>2022-10-07T22:12:27+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a027474ea6b424aa4101edc9d15d8ebe677783e9'/>
<id>urn:sha1:a027474ea6b424aa4101edc9d15d8ebe677783e9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Let llvm-config tell us where to find its tools</title>
<updated>2022-10-07T18:24:02+00:00</updated>
<author>
<name>Josh Stone</name>
<email>jistone@redhat.com</email>
</author>
<published>2022-10-07T18:24:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=128344196ba5d7da8185e498706996a135849b5f'/>
<id>urn:sha1:128344196ba5d7da8185e498706996a135849b5f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Auto merge of #100557 - dawnofmidnight:tarball-commit-info, r=Mark-Simulacrum</title>
<updated>2022-10-02T20:55:17+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2022-10-02T20:55:17+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=de692f1fae957fcfb0efb46db044a61261169963'/>
<id>urn:sha1:de692f1fae957fcfb0efb46db044a61261169963</id>
<content type='text'>
fix: use git-commit-info for version information

Fixes #33286.
Fixes #86587.

This PR changes the current `git-commit-hash` file that `./x.py` dist puts in the `rustc-{version}-src.tar.{x,g}z` to contain the hash, the short hash, and the commit date from which the tarball was created, assuming git was available when it was. It uses this for reading the version so that rustc has all the appropriate metadata.

# Testing

Testing this is kind of a pain. I did it with something like
```sh
./x.py dist # ensure that `ignore-git` is `false` in config.toml
cp ./build/dist/rustc-1.65.0-dev-src.tar.gz ../rustc-1.65.0-dev-src.tar.gz
cd .. &amp;&amp; tar -xzf rustc-1.65.0-dev-src &amp;&amp; cd rustc-1.65.0-dev-src
./x.py build
```

Then, the output of  `rustc -vV` with the stage1 compiler should have the `commit-hash` and `commit-date` fields filled, rather than be `unknown`. To be completely sure, you can use `rustc --sysroot` with the stdlib that the original `./x.py dist` made, which will require that the metadata matches.
</content>
</entry>
<entry>
<title>fix: use git-commit-info for version information</title>
<updated>2022-10-01T21:46:18+00:00</updated>
<author>
<name>dawnofmidnight</name>
<email>dawnofmidnight@duck.com</email>
</author>
<published>2022-08-24T16:36:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=fdb39551ddfb431ee1edb61731a68927a06649f7'/>
<id>urn:sha1:fdb39551ddfb431ee1edb61731a68927a06649f7</id>
<content type='text'>
This PR adds support for fetching version information from the
`git-commit-info` file when building the compiler from a source tarball.
</content>
</entry>
<entry>
<title>Remove the allow-list for dynamic linking of LLVM tools</title>
<updated>2022-09-16T20:08:44+00:00</updated>
<author>
<name>Chris Wailes</name>
<email>chriswailes@google.com</email>
</author>
<published>2022-09-13T23:06:07+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=999502978612be1379240f792614f8580e49d123'/>
<id>urn:sha1:999502978612be1379240f792614f8580e49d123</id>
<content type='text'>
This commit removes an allow-list for the dynamic linking of the LLVM
tools and instead relies on the builder's linking preference only.
</content>
</entry>
<entry>
<title>Auto merge of #100707 - dzvon:fix-typo, r=davidtwco</title>
<updated>2022-09-01T05:39:58+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2022-09-01T05:39:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=b32223fec10743af93913c41ec60645d741b0cb6'/>
<id>urn:sha1:b32223fec10743af93913c41ec60645d741b0cb6</id>
<content type='text'>
Fix a bunch of typo

This PR will fix some typos detected by [typos].

I only picked the ones I was sure were spelling errors to fix, mostly in
the comments.

[typos]: https://github.com/crate-ci/typos
</content>
</entry>
<entry>
<title>Fix a bunch of typo</title>
<updated>2022-08-31T10:24:55+00:00</updated>
<author>
<name>Dezhi Wu</name>
<email>wu543065657@163.com</email>
</author>
<published>2022-08-18T02:13:37+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=b1430fb7ca499d517d9f4b3b6c5a81442129c88b'/>
<id>urn:sha1:b1430fb7ca499d517d9f4b3b6c5a81442129c88b</id>
<content type='text'>
This PR will fix some typos detected by [typos].

I only picked the ones I was sure were spelling errors to fix, mostly in
the comments.

[typos]: https://github.com/crate-ci/typos
</content>
</entry>
<entry>
<title>add riscv64gc-unknown-openbsd support (target riscv64-unknown-openbsd on OpenBSD)</title>
<updated>2022-08-28T05:22:21+00:00</updated>
<author>
<name>Sébastien Marie</name>
<email>semarie@online.fr</email>
</author>
<published>2022-08-28T05:22:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=1de5b226782361d9ea1929fd619f4fc2aaab1094'/>
<id>urn:sha1:1de5b226782361d9ea1929fd619f4fc2aaab1094</id>
<content type='text'>
- add platform-support documentation
- add riscv64gc-unknown-openbsd spec
- do not try to link with -latomic on openbsd
</content>
</entry>
</feed>
