<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/src/libcore/cmp.rs, branch 1.41.0</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.41.0</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.41.0'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2019-12-14T14:01:09+00:00</updated>
<entry>
<title>Revert "Stabilize the `never_type`, written `!`."</title>
<updated>2019-12-14T14:01:09+00:00</updated>
<author>
<name>Niko Matsakis</name>
<email>niko@alum.mit.edu</email>
</author>
<published>2019-12-11T14:55:29+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=d286113024ce50ada7a34f00041f4ff41f3217e6'/>
<id>urn:sha1:d286113024ce50ada7a34f00041f4ff41f3217e6</id>
<content type='text'>
This reverts commit 15c30ddd69d6cc3fffe6d304c6dc968a5ed046f1.
</content>
</entry>
<entry>
<title>Rollup merge of #66881 - krishna-veerareddy:issue-66780-bool-ord-optimization, r=sfackler</title>
<updated>2019-12-11T09:10:41+00:00</updated>
<author>
<name>Mazdak Farrokhzad</name>
<email>twingoow@gmail.com</email>
</author>
<published>2019-12-11T09:10:41+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=830b4ee76adea7577615c7a6950e14c22cf0fb20'/>
<id>urn:sha1:830b4ee76adea7577615c7a6950e14c22cf0fb20</id>
<content type='text'>
Optimize Ord trait implementation for bool

Casting the booleans to `i8`s and converting their difference into `Ordering` generates better assembly than casting them to `u8`s and comparing them.

Fixes #66780

#### Comparison([Godbolt link](https://rust.godbolt.org/z/PjBpvF))

##### Old assembly:
```asm
example::boolean_cmp:
        mov     ecx, edi
        xor     ecx, esi
        test    esi, esi
        mov     eax, 255
        cmove   eax, ecx
        test    edi, edi
        cmovne  eax, ecx
        ret
```

##### New assembly:
```asm
example::boolean_cmp:
        mov     eax, edi
        sub     al, sil
        ret
```

##### Old LLVM-MCA statistics:
```
Iterations:        100
Instructions:      800
Total Cycles:      234
Total uOps:        1000

Dispatch Width:    6
uOps Per Cycle:    4.27
IPC:               3.42
Block RThroughput: 1.7
```

##### New LLVM-MCA statistics:
```
Iterations:        100
Instructions:      300
Total Cycles:      110
Total uOps:        500

Dispatch Width:    6
uOps Per Cycle:    4.55
IPC:               2.73
Block RThroughput: 1.0
```
</content>
</entry>
<entry>
<title>Add better documentation for unsafe block</title>
<updated>2019-12-10T21:30:06+00:00</updated>
<author>
<name>Krishna Sai Veera Reddy</name>
<email>krishnasai.veerareddy@gm.com</email>
</author>
<published>2019-12-10T21:30:06+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=1f07aa582a41e6fc253139909d3bf9bfd04a9d6d'/>
<id>urn:sha1:1f07aa582a41e6fc253139909d3bf9bfd04a9d6d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Document usage of unsafe block</title>
<updated>2019-12-02T15:45:35+00:00</updated>
<author>
<name>Krishna Sai Veera Reddy</name>
<email>krishnasai.veerareddy@gm.com</email>
</author>
<published>2019-12-02T15:45:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a30ee8e7636d2cf26eba89a8402cdfefebf9845e'/>
<id>urn:sha1:a30ee8e7636d2cf26eba89a8402cdfefebf9845e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Remove ord lang item</title>
<updated>2019-12-01T21:09:07+00:00</updated>
<author>
<name>cad97</name>
<email>cad97@cad97.com</email>
</author>
<published>2019-12-01T21:09:07+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=ac57e1b64711dfdc3bd2987636ecc021707df283'/>
<id>urn:sha1:ac57e1b64711dfdc3bd2987636ecc021707df283</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Optimize Ord trait implementation for bool</title>
<updated>2019-11-29T22:22:44+00:00</updated>
<author>
<name>Krishna Sai Veera Reddy</name>
<email>krishnasai.veerareddy@gm.com</email>
</author>
<published>2019-11-29T22:22:44+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=4ca769ad091ef0018f5a20effaf4b4f428a034d7'/>
<id>urn:sha1:4ca769ad091ef0018f5a20effaf4b4f428a034d7</id>
<content type='text'>
Casting the booleans to `i8`s and converting their difference
into `Ordering` generates better assembly than casting them to
`u8`s and comparing them.
</content>
</entry>
<entry>
<title>follow the same function order in the trait</title>
<updated>2019-11-26T14:55:38+00:00</updated>
<author>
<name>Guanqun Lu</name>
<email>guanqun.lu@gmail.com</email>
</author>
<published>2019-11-26T14:55:01+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=55d725884b1fb62cbec038d8633bd40c39cc896f'/>
<id>urn:sha1:55d725884b1fb62cbec038d8633bd40c39cc896f</id>
<content type='text'>
This removes several warnings in IDE.
</content>
</entry>
<entry>
<title>Rollup merge of #66566 - robamler:issue-66476, r=rkruppe</title>
<updated>2019-11-22T18:57:46+00:00</updated>
<author>
<name>Mazdak Farrokhzad</name>
<email>twingoow@gmail.com</email>
</author>
<published>2019-11-22T18:57:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=afc78e19dd23260613c4c734650b5068c913b385'/>
<id>urn:sha1:afc78e19dd23260613c4c734650b5068c913b385</id>
<content type='text'>
Document pitfall with `impl PartialEq&lt;B&gt; for A`

Fixes #66476 by turning the violating example into an explicit
counterexample.
</content>
</entry>
<entry>
<title>Document pitfall with `impl PartialEq&lt;B&gt; for A`</title>
<updated>2019-11-22T07:16:44+00:00</updated>
<author>
<name>Robert Bamler</name>
<email>robamler@users.noreply.github.com</email>
</author>
<published>2019-11-20T03:57:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=5028fd8ab9bda648840bb48e03e618f027cc8c85'/>
<id>urn:sha1:5028fd8ab9bda648840bb48e03e618f027cc8c85</id>
<content type='text'>
Fixes #66476 by turning the violating example into an explicit
counterexample.
</content>
</entry>
<entry>
<title>Stabilize the `never_type`, written `!`.</title>
<updated>2019-11-21T13:55:32+00:00</updated>
<author>
<name>Mazdak Farrokhzad</name>
<email>twingoow@gmail.com</email>
</author>
<published>2019-10-12T23:50:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=15c30ddd69d6cc3fffe6d304c6dc968a5ed046f1'/>
<id>urn:sha1:15c30ddd69d6cc3fffe6d304c6dc968a5ed046f1</id>
<content type='text'>
</content>
</entry>
</feed>
