<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/compiler/rustc_target/src/spec/base/android.rs, branch automation/bors/try</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=automation/bors/try</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=automation/bors/try'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2025-10-02T17:46:41+00:00</updated>
<entry>
<title>Fix backtraces with `-C panic=abort` on linux; emit unwind tables by default</title>
<updated>2025-10-02T17:46:41+00:00</updated>
<author>
<name>Martin Nordholts</name>
<email>martin.nordholts@codetale.se</email>
</author>
<published>2025-07-07T20:36:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=fe66eaa67acc47525db6f13cf97d54780d87b805'/>
<id>urn:sha1:fe66eaa67acc47525db6f13cf97d54780d87b805</id>
<content type='text'>
The linux backtrace unwinder relies on unwind tables to work properly,
and generating and printing a backtrace is done by for example the
default panic hook.

Begin emitting unwind tables by default again with `-C panic=abort` (see
history below) so that backtraces work.

History
=======

Backtraces with `-C panic=abort` used to work in Rust 1.22 but broke in
Rust 1.23, because in 1.23 we stopped emitting unwind tables with `-C
panic=abort` (see 24cc38e3b00).

In 1.45 (see cda994633ee) a workaround in the form
of `-C force-unwind-tables=yes` was added.

`-C panic=abort` was added in [Rust
1.10](https://blog.rust-lang.org/2016/07/07/Rust-1.10/#what-s-in-1-10-stable)
and the motivation was binary size and compile time. But given how
confusing that behavior has turned out to be, it is better to make
binary size optimization opt-in with `-C force-unwind-tables=no` rather
than default since the current default breaks backtraces.

Besides, if binary size is a primary concern, there are many other
tricks that can be used that has a higher impact.
</content>
</entry>
<entry>
<title>Reformat using the new identifier sorting from rustfmt</title>
<updated>2024-09-22T23:11:29+00:00</updated>
<author>
<name>Michael Goulet</name>
<email>michael@errs.io</email>
</author>
<published>2024-09-22T23:05:04+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=c682aa162b0d41e21cc6748f4fecfe01efb69d1f'/>
<id>urn:sha1:c682aa162b0d41e21cc6748f4fecfe01efb69d1f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add `warn(unreachable_pub)` to `rustc_target`.</title>
<updated>2024-09-02T22:49:54+00:00</updated>
<author>
<name>Nicholas Nethercote</name>
<email>n.nethercote@gmail.com</email>
</author>
<published>2024-08-30T04:22:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=0fb3a509cf437610b4329003de5bc1552aa7e540'/>
<id>urn:sha1:0fb3a509cf437610b4329003de5bc1552aa7e540</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add emulated TLS support</title>
<updated>2023-12-06T16:21:32+00:00</updated>
<author>
<name>quininer</name>
<email>quininer@live.com</email>
</author>
<published>2023-11-13T12:48:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=e5b76892cc5e6fbfb495bf6a7339962a287849a7'/>
<id>urn:sha1:e5b76892cc5e6fbfb495bf6a7339962a287849a7</id>
<content type='text'>
Currently LLVM uses emutls by default
for some targets (such as android, openbsd),
but rust does not use it, because `has_thread_local` is false.

This commit has some changes to allow users to enable emutls:

1. add `-Zhas-thread-local` flag to specify
    that std uses `#[thread_local]` instead of pthread key.
2. when using emutls, decorate symbol names
    to find thread local symbol correctly.
3. change `-Zforce-emulated-tls` to `-Ztls-model=emulated`
    to explicitly specify whether to generate emutls.
</content>
</entry>
<entry>
<title>target: move base specs to spec/base</title>
<updated>2023-11-08T06:15:26+00:00</updated>
<author>
<name>David Wood</name>
<email>david.wood@huawei.com</email>
</author>
<published>2023-11-08T06:15:26+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=76aa83e3e13bf23168389699ca69c59d7a79a336'/>
<id>urn:sha1:76aa83e3e13bf23168389699ca69c59d7a79a336</id>
<content type='text'>
Signed-off-by: David Wood &lt;david@davidtw.co&gt;
</content>
</entry>
</feed>
