diff options
| author | Lzu Tao <taolzu@gmail.com> | 2019-08-29 03:52:18 +0000 |
|---|---|---|
| committer | Lzu Tao <taolzu@gmail.com> | 2019-08-29 03:52:18 +0000 |
| commit | ade191c70a51f6699b64423e0bc8e0f307de9ecd (patch) | |
| tree | e51436dd128c8a3ee92af6a67d72023de7820ac8 | |
| parent | 0414dfa0aa072b6e1153ae60f94de852c07bb803 (diff) | |
| download | rust-ade191c70a51f6699b64423e0bc8e0f307de9ecd.tar.gz rust-ade191c70a51f6699b64423e0bc8e0f307de9ecd.zip | |
Small improvement for Ord implementation of integers
| -rw-r--r-- | src/libcore/cmp.rs | 4 | ||||
| -rw-r--r-- | src/test/codegen/integer-cmp.rs | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/src/libcore/cmp.rs b/src/libcore/cmp.rs index 167a9dd1c36..607427a85d6 100644 --- a/src/libcore/cmp.rs +++ b/src/libcore/cmp.rs @@ -1015,8 +1015,8 @@ mod impls { // The order here is important to generate more optimal assembly. // See <https://github.com/rust-lang/rust/issues/63758> for more info. if *self < *other { Less } - else if *self > *other { Greater } - else { Equal } + else if *self == *other { Equal } + else { Greater } } } )*) diff --git a/src/test/codegen/integer-cmp.rs b/src/test/codegen/integer-cmp.rs index 1373b12e372..8ada3cf09d0 100644 --- a/src/test/codegen/integer-cmp.rs +++ b/src/test/codegen/integer-cmp.rs @@ -11,7 +11,7 @@ use std::cmp::Ordering; #[no_mangle] pub fn cmp_signed(a: i64, b: i64) -> Ordering { // CHECK: icmp slt -// CHECK: icmp sgt +// CHECK: icmp ne // CHECK: zext i1 // CHECK: select i1 a.cmp(&b) @@ -21,7 +21,7 @@ pub fn cmp_signed(a: i64, b: i64) -> Ordering { #[no_mangle] pub fn cmp_unsigned(a: u32, b: u32) -> Ordering { // CHECK: icmp ult -// CHECK: icmp ugt +// CHECK: icmp ne // CHECK: zext i1 // CHECK: select i1 a.cmp(&b) |
