<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/src/liballoc_jemalloc/lib.rs, branch 1.26.2</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.26.2</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.26.2'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2018-04-02T07:06:19+00:00</updated>
<entry>
<title>Use Alloc and Layout from core::heap.</title>
<updated>2018-04-02T07:06:19+00:00</updated>
<author>
<name>Mike Hommey</name>
<email>mh@glandium.org</email>
</author>
<published>2018-04-02T07:05:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=b647583c2df155f4741fa2b3e1fa6e4fb1f5868f'/>
<id>urn:sha1:b647583c2df155f4741fa2b3e1fa6e4fb1f5868f</id>
<content type='text'>
94d1970bba87f2d2893f6e934e4c3f02ed50604d moved the alloc::allocator
module to core::heap, moving e.g. Alloc and Layout out of the alloc
crate. While alloc::heap reexports them, it's better to use them from
where they really come from.
</content>
</entry>
<entry>
<title>Remove comment about a branch being optimized out, fix #45831</title>
<updated>2017-11-20T15:22:17+00:00</updated>
<author>
<name>Simon Sapin</name>
<email>simon.sapin@exyr.org</email>
</author>
<published>2017-11-20T14:55:31+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=43e32b53462e139c560672102724e8a8c859dbf7'/>
<id>urn:sha1:43e32b53462e139c560672102724e8a8c859dbf7</id>
<content type='text'>
Most often, this code is used through the `std::heap::Heap`
and `#[gloabal_allocator]` indirection, so this branch is not
optimized out anymore.
</content>
</entry>
<entry>
<title>alloc_jemalloc: don’t assume MIN_ALIGN for small sizes</title>
<updated>2017-11-20T15:22:17+00:00</updated>
<author>
<name>Simon Sapin</name>
<email>simon.sapin@exyr.org</email>
</author>
<published>2017-11-20T14:42:34+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=2dd268b652cb42f4ebaa145c9e50cc6509c47d26'/>
<id>urn:sha1:2dd268b652cb42f4ebaa145c9e50cc6509c47d26</id>
<content type='text'>
See previous commit’s message for what is expected of allocators
in general, and https://github.com/jemalloc/jemalloc/issues/1072
for discussion of what jemalloc does specifically.
</content>
</entry>
<entry>
<title>rustc: Handle some libstd symbole exports better</title>
<updated>2017-11-05T03:01:11+00:00</updated>
<author>
<name>Alex Crichton</name>
<email>alex@alexcrichton.com</email>
</author>
<published>2017-11-01T20:16:36+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=fbf98697021173a30b84d9145df0966a23a2f9d2'/>
<id>urn:sha1:fbf98697021173a30b84d9145df0966a23a2f9d2</id>
<content type='text'>
Right now symbol exports, particularly in a cdylib, are handled by
assuming that `pub extern` combined with `#[no_mangle]` means "export
this". This isn't actually what we want for some symbols that the
standard library uses to implement itself, for example symbols related
to allocation. Additionally other special symbols like
`rust_eh_personallity` have no need to be exported from cdylib crate
types (only needed in dylib crate types).

This commit updates how rustc handles these special symbols by adding to
the hardcoded logic of symbols like `rust_eh_personallity` but also
adding a new attribute, `#[rustc_std_internal_symbol]`, which forces the
export level to be considered the same as all other Rust functions
instead of looking like a C function.

The eventual goal here is to prevent functions like `__rdl_alloc` from
showing up as part of a Rust cdylib as it's just an internal
implementation detail. This then further allows such symbols to get gc'd
by the linker when creating a cdylib.
</content>
</entry>
<entry>
<title>[jemalloc] set correct excess in alloc_excess</title>
<updated>2017-11-03T16:44:58+00:00</updated>
<author>
<name>gnzlbg</name>
<email>gonzalobg88@gmail.com</email>
</author>
<published>2017-11-03T16:44:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=549ab77e2375f07f3c425eb4c95ba31547288176'/>
<id>urn:sha1:549ab77e2375f07f3c425eb4c95ba31547288176</id>
<content type='text'>
</content>
</entry>
<entry>
<title>use nallocx instead of sallocx</title>
<updated>2017-10-25T18:26:27+00:00</updated>
<author>
<name>gnzlbg</name>
<email>gonzalobg88@gmail.com</email>
</author>
<published>2017-10-25T18:22:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=45ef01269936c6b0c02fc5c212a5cea632884b69'/>
<id>urn:sha1:45ef01269936c6b0c02fc5c212a5cea632884b69</id>
<content type='text'>
</content>
</entry>
<entry>
<title>move sallocx and excess into not null branch</title>
<updated>2017-10-25T12:46:02+00:00</updated>
<author>
<name>gnzlbg</name>
<email>gonzalobg88@gmail.com</email>
</author>
<published>2017-10-25T12:46:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=f39594d4bb719b9af7fcb56b7e4cd5a8868a8c50'/>
<id>urn:sha1:f39594d4bb719b9af7fcb56b7e4cd5a8868a8c50</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[jemalloc] set correct excess in realloc_excess</title>
<updated>2017-10-25T12:29:22+00:00</updated>
<author>
<name>gnzlbg</name>
<email>gonzalobg88@gmail.com</email>
</author>
<published>2017-10-25T12:28:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=e1a71e7b8a15026b1a8067135fccf3d18be0203d'/>
<id>urn:sha1:e1a71e7b8a15026b1a8067135fccf3d18be0203d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[jemalloc] set correct excess in realloc_excess</title>
<updated>2017-10-25T12:18:20+00:00</updated>
<author>
<name>gnzlbg</name>
<email>gonzalobg88@gmail.com</email>
</author>
<published>2017-10-25T08:22:24+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=d16c140b7cd014f03064f6f66f35baaa0b9cb7ce'/>
<id>urn:sha1:d16c140b7cd014f03064f6f66f35baaa0b9cb7ce</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Autodetect the type of allocator crate used</title>
<updated>2017-09-10T17:59:42+00:00</updated>
<author>
<name>Michal 'vorner' Vaner</name>
<email>vorner@vorner.cz</email>
</author>
<published>2017-09-10T17:59:42+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=94297c67465c3bd124063de717f7574491f5cc7d'/>
<id>urn:sha1:94297c67465c3bd124063de717f7574491f5cc7d</id>
<content type='text'>
Annotate the allocator crates (allocator_system, allocator_jemalloc) by
the type of allocator they are. If one is requested as an exe allocator,
detect its type by the flags.

This has the effect that using this (de jure wrong) configuration in the
target spec works instead of producing a really unhelpful and arcane
linker error:

"exe-allocation-crate": "alloc_system"

Fixes #43524.
</content>
</entry>
</feed>
