<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/src/test/codegen/function-arguments.rs, branch 1.36.0</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.36.0</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.36.0'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2018-12-26T04:08:33+00:00</updated>
<entry>
<title>Remove licenses</title>
<updated>2018-12-26T04:08:33+00:00</updated>
<author>
<name>Mark Rousskov</name>
<email>mark.simulacrum@gmail.com</email>
</author>
<published>2018-12-25T15:56:47+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=2a663555ddf36f6b041445894a8c175cd1bc718c'/>
<id>urn:sha1:2a663555ddf36f6b041445894a8c175cd1bc718c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Enable emission of alignment attrs for pointer params</title>
<updated>2018-12-20T23:31:18+00:00</updated>
<author>
<name>Nikita Popov</name>
<email>nikita.ppv@gmail.com</email>
</author>
<published>2018-12-20T23:30:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=db24d8e8e25192703eb8f2ad6864207e92979443'/>
<id>urn:sha1:db24d8e8e25192703eb8f2ad6864207e92979443</id>
<content type='text'>
Instead disable creation of assumptions during inlining using an
LLVM opt flag.

The -Z arg-align-attributes option which previously controlled this
behavior is removed.
</content>
</entry>
<entry>
<title>Bump minimum required LLVM version to 6.0</title>
<updated>2018-12-09T11:05:40+00:00</updated>
<author>
<name>Nikita Popov</name>
<email>nikita.ppv@gmail.com</email>
</author>
<published>2018-12-09T10:20:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=706e67b0a0143d651eb03f2fa2c30645899e81ff'/>
<id>urn:sha1:706e67b0a0143d651eb03f2fa2c30645899e81ff</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Do not put noalias annotations by default</title>
<updated>2018-09-29T10:00:41+00:00</updated>
<author>
<name>Simonas Kazlauskas</name>
<email>git@kazlauskas.me</email>
</author>
<published>2018-09-28T14:40:06+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=9c62193fec1c5d2200c19d9445fe9bad753eefea'/>
<id>urn:sha1:9c62193fec1c5d2200c19d9445fe9bad753eefea</id>
<content type='text'>
This will be re-enabled sooner or later depending on results of further
investigation.

Fixes #54462
</content>
</entry>
<entry>
<title>Use partial but correct vtable layout</title>
<updated>2018-08-28T11:15:22+00:00</updated>
<author>
<name>Oliver Schneider</name>
<email>github35764891676564198441@oli-obk.de</email>
</author>
<published>2018-08-26T20:21:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=0ed8e16195658b839f6ff8f7b8ae719a42d2827e'/>
<id>urn:sha1:0ed8e16195658b839f6ff8f7b8ae719a42d2827e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>dont hardcode vtable size in codegen test</title>
<updated>2018-07-29T18:24:26+00:00</updated>
<author>
<name>Ralf Jung</name>
<email>post@ralfj.de</email>
</author>
<published>2018-07-29T10:34:19+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=86e59ccf34214e33273af145df13a771607dc42e'/>
<id>urn:sha1:86e59ccf34214e33273af145df13a771607dc42e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>update codegen tests</title>
<updated>2018-07-29T18:24:26+00:00</updated>
<author>
<name>Ralf Jung</name>
<email>post@ralfj.de</email>
</author>
<published>2018-07-29T10:14:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=5ba76335bb76e8c31a24d77771885c57614ace9b'/>
<id>urn:sha1:5ba76335bb76e8c31a24d77771885c57614ace9b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Store scalar pair bools as i8 in memory</title>
<updated>2018-07-05T16:59:52+00:00</updated>
<author>
<name>Josh Stone</name>
<email>jistone@redhat.com</email>
</author>
<published>2018-06-15T22:47:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=e5789765606baebd983bd9b1c870cb8b57a0627b'/>
<id>urn:sha1:e5789765606baebd983bd9b1c870cb8b57a0627b</id>
<content type='text'>
We represent `bool` as `i1` in a `ScalarPair`, unlike other aggregates,
to optimize IR for checked operators and the like.  With this patch, we
still do so when the pair is an immediate value, but we use the `i8`
memory type when the value is loaded or stored as an LLVM aggregate.

So `(bool, bool)` looks like an `{ i1, i1 }` immediate, but `{ i8, i8 }`
in memory.  When a pair is a direct function argument, `PassMode::Pair`,
it is still passed using the immediate `i1` type, but as a return value
it will use the `i8` memory type.  Also, `bool`-like` enum tags will now
use scalar pairs when possible, where they were previously excluded due
to optimization issues.
</content>
</entry>
<entry>
<title>Emit noalias on &amp;mut parameters by default</title>
<updated>2018-05-17T20:27:29+00:00</updated>
<author>
<name>Nikita Popov</name>
<email>nikita.ppv@gmail.com</email>
</author>
<published>2018-05-14T13:20:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=12308139ec76dfa050ed012606495250391aaf74'/>
<id>urn:sha1:12308139ec76dfa050ed012606495250391aaf74</id>
<content type='text'>
This used to be disabled due to LLVM bugs in the handling of
noalias information in conjunction with unwinding. However,
according to #31681 all known LLVM bugs have been fixed by
LLVM 6.0, so it's probably time to reenable this optimization.

Noalias annotations will not be emitted by default if either
-C panic=abort (as previously) or LLVM &gt;= 6.0 (new).

-Z mutable-noalias=no is left as an escape-hatch to allow
debugging problems suspected to stem from this change.
</content>
</entry>
<entry>
<title>Use ScalarPair for tagged enums</title>
<updated>2018-04-26T07:30:28+00:00</updated>
<author>
<name>Anthony Ramine</name>
<email>n.oxyde@gmail.com</email>
</author>
<published>2018-03-27T14:44:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=3ca6ad922eb6d8c3139d961c844a0194eaf58770'/>
<id>urn:sha1:3ca6ad922eb6d8c3139d961c844a0194eaf58770</id>
<content type='text'>
</content>
</entry>
</feed>
