<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/src/test/codegen/scalar-pair-bool.rs, branch 1.40.0</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.40.0</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.40.0'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2019-09-13T16:25:05+00:00</updated>
<entry>
<title>codegen: use "_N" (like for other locals) instead of "argN", for argument names.</title>
<updated>2019-09-13T16:25:05+00:00</updated>
<author>
<name>Eduard-Mihai Burtescu</name>
<email>edy.burt@gmail.com</email>
</author>
<published>2019-09-13T16:25:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=bdad2c52a538206a2f1c154bb5d5c3d7cb6b5d6f'/>
<id>urn:sha1:bdad2c52a538206a2f1c154bb5d5c3d7cb6b5d6f</id>
<content type='text'>
</content>
</entry>
<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>Update scalar pairs per review comments</title>
<updated>2018-07-05T21:22:09+00:00</updated>
<author>
<name>Josh Stone</name>
<email>jistone@redhat.com</email>
</author>
<published>2018-07-05T21:22:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=557736befc84fb72066128a8c42efe6e4e63a3b1'/>
<id>urn:sha1:557736befc84fb72066128a8c42efe6e4e63a3b1</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>
</feed>
