<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/src/rustllvm/PassWrapper.cpp, branch 1.32.0</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.32.0</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.32.0'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2018-11-29T23:52:16+00:00</updated>
<entry>
<title>Enable -mergefunc-use-aliases</title>
<updated>2018-11-29T23:52:16+00:00</updated>
<author>
<name>Nikita Popov</name>
<email>nikita.ppv@gmail.com</email>
</author>
<published>2018-11-29T22:05:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=cbf748993f59682f60dfe620eafea24124f737fb'/>
<id>urn:sha1:cbf748993f59682f60dfe620eafea24124f737fb</id>
<content type='text'>
If the Rust LLVM fork is used, enable the -mergefunc-use-aliases
flag, which will create aliases for merged functions, rather than
inserting a call from one to the other.

A number of codegen tests needed to be adjusted, because functions
that previously fell below the thunk limit are now being merged.
Merging is prevented either using -C no-prepopulate-passes, or by
making the functions non-identical.

I expect that this is going to break something, somewhere, because
it isn't able to deal with aliases properly, but we won't find out
until we try :)

This fixes #52651.
</content>
</entry>
<entry>
<title>Handle some renamed ThinLTO functions</title>
<updated>2018-11-26T04:27:18+00:00</updated>
<author>
<name>Alex Crichton</name>
<email>alex@alexcrichton.com</email>
</author>
<published>2018-11-09T21:09:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=ae5b350d7757a70e53219bbb5e32ae149ad063e0'/>
<id>urn:sha1:ae5b350d7757a70e53219bbb5e32ae149ad063e0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Auto merge of #55698 - nikic:remove-llvm-4-support, r=alexcrichton</title>
<updated>2018-11-11T22:38:54+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2018-11-11T22:38:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=775eab58835f9bc0f1f01ccbb79725dce0c73b51'/>
<id>urn:sha1:775eab58835f9bc0f1f01ccbb79725dce0c73b51</id>
<content type='text'>
Remove support for building against LLVM 4

With emscripten removed in #55626, we no longer need to support building against LLVM 4.
</content>
</entry>
<entry>
<title>Auto merge of #55626 - nikic:update-emscripten, r=alexcrichton</title>
<updated>2018-11-10T01:16:02+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2018-11-10T01:16:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=06118eac4c602a22d2004c98756a95f2c5ec95d5'/>
<id>urn:sha1:06118eac4c602a22d2004c98756a95f2c5ec95d5</id>
<content type='text'>
Update emscripten

This updates emscripten to 1.38.15, which is based on LLVM 6.0.1 and would allow us to drop code for handling LLVM 4.

The main issue I ran into is that exporting statics through `EXPORTED_FUNCTIONS` no longer works. As far as I understand exporting non-functions doesn't really make sense under emscripten anyway, so I've modified the symbol export code to not even try.

Closes #52323.
</content>
</entry>
<entry>
<title>Remove support for building against LLVM 4</title>
<updated>2018-11-05T14:04:26+00:00</updated>
<author>
<name>Nikita Popov</name>
<email>nikita.ppv@gmail.com</email>
</author>
<published>2018-11-05T13:52:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=3cc8b17451aac4a144baa48bb48f4187a5529769'/>
<id>urn:sha1:3cc8b17451aac4a144baa48bb48f4187a5529769</id>
<content type='text'>
With emscripten removed in #55626, we no longer need to support
building against LLVM 4.
</content>
</entry>
<entry>
<title>Update llvm-emscripten</title>
<updated>2018-11-04T17:50:57+00:00</updated>
<author>
<name>Nikita Popov</name>
<email>nikita.ppv@gmail.com</email>
</author>
<published>2018-11-02T14:17:39+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=9eb19273a3ad514529cbb80f22e198e01de18a82'/>
<id>urn:sha1:9eb19273a3ad514529cbb80f22e198e01de18a82</id>
<content type='text'>
This updates emscripten to version 1.38.15, which is based on
LLVM 6.0.1.
</content>
</entry>
<entry>
<title>Remove checks for LLVM &lt; 4.0</title>
<updated>2018-11-01T20:09:02+00:00</updated>
<author>
<name>Nikita Popov</name>
<email>nikita.ppv@gmail.com</email>
</author>
<published>2018-11-01T20:06:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=d79459769832c5c1724ce1e7e7099edb945b1467'/>
<id>urn:sha1:d79459769832c5c1724ce1e7e7099edb945b1467</id>
<content type='text'>
While we still have to support LLVM 4.0 for Emscripten, we can
drop checks for LLVM &gt;= 4.0 and &lt; 4.0.
</content>
</entry>
<entry>
<title>add -Z emit-stack-sizes</title>
<updated>2018-09-26T13:21:26+00:00</updated>
<author>
<name>Jorge Aparicio</name>
<email>jorge@japaric.io</email>
</author>
<published>2018-09-13T17:43:15+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=3c0907ce51f51bbedeb63b482041e4a8e1239364'/>
<id>urn:sha1:3c0907ce51f51bbedeb63b482041e4a8e1239364</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Provide a way of accessing the ThinLTO module import map in rustc.</title>
<updated>2018-08-31T13:22:52+00:00</updated>
<author>
<name>Michael Woerister</name>
<email>michaelwoerister@posteo</email>
</author>
<published>2018-08-17T13:25:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=2e587df6e2215b9dd053879d2ad42044781fc1c4'/>
<id>urn:sha1:2e587df6e2215b9dd053879d2ad42044781fc1c4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix warnings about the `native` target-cpu</title>
<updated>2018-08-28T20:32:11+00:00</updated>
<author>
<name>Alex Crichton</name>
<email>alex@alexcrichton.com</email>
</author>
<published>2018-08-23T18:03:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=1fd45a13dee17701fc0aeaa847c1919d485d09fd'/>
<id>urn:sha1:1fd45a13dee17701fc0aeaa847c1919d485d09fd</id>
<content type='text'>
This fixes a regression from #53031 where specifying `-C target-cpu=native` is
printing a lot of warnings from LLVM about `native` being an unknown CPU. It
turns out that `native` is indeed an unknown CPU and we have to perform a
mapping to an actual CPU name, but this mapping is only performed in one
location rather than all locations we inform LLVM about the target CPU.

This commit centralizes the mapping of `native` to LLVM's value of the native
CPU, ensuring that all locations we inform LLVM about the `target-cpu` it's
never `native`.

Closes #53322
</content>
</entry>
</feed>
