about summary refs log tree commit diff
diff options
context:
space:
mode:
authorMiccah Castorina <m.castorina93@gmail.com>2021-02-02 20:18:03 -0600
committerMiccah Castorina <m.castorina93@gmail.com>2021-02-26 11:42:59 -0600
commit229fdf839a348ddbdd2c6cf411767a565394a8ae (patch)
tree70cb68a6a2dbd248b1ba4059cd2c46a484032507
parent8acb5665072f499effeb77eb2c60fd9cf74a2955 (diff)
downloadrust-229fdf839a348ddbdd2c6cf411767a565394a8ae.tar.gz
rust-229fdf839a348ddbdd2c6cf411767a565394a8ae.zip
Add two more benchmarks for strictly ASCII and non ASCII cases
-rw-r--r--library/core/benches/char/methods.rs24
1 files changed, 22 insertions, 2 deletions
diff --git a/library/core/benches/char/methods.rs b/library/core/benches/char/methods.rs
index 749cf979fad..9408f83c32f 100644
--- a/library/core/benches/char/methods.rs
+++ b/library/core/benches/char/methods.rs
@@ -47,11 +47,31 @@ fn bench_to_ascii_lowercase(b: &mut Bencher) {
 }
 
 #[bench]
-fn bench_char_to_uppercase(b: &mut Bencher) {
+fn bench_ascii_mix_to_uppercase(b: &mut Bencher) {
     b.iter(|| (0..=255).cycle().take(10_000).map(|b| char::from(b).to_uppercase()).count())
 }
 
 #[bench]
-fn bench_char_to_lowercase(b: &mut Bencher) {
+fn bench_ascii_mix_to_lowercase(b: &mut Bencher) {
     b.iter(|| (0..=255).cycle().take(10_000).map(|b| char::from(b).to_lowercase()).count())
 }
+
+#[bench]
+fn bench_ascii_char_to_uppercase(b: &mut Bencher) {
+    b.iter(|| (0..=127).cycle().take(10_000).map(|b| char::from(b).to_uppercase()).count())
+}
+
+#[bench]
+fn bench_ascii_char_to_lowercase(b: &mut Bencher) {
+    b.iter(|| (0..=127).cycle().take(10_000).map(|b| char::from(b).to_lowercase()).count())
+}
+
+#[bench]
+fn bench_non_ascii_char_to_uppercase(b: &mut Bencher) {
+    b.iter(|| (128..=255).cycle().take(10_000).map(|b| char::from(b).to_uppercase()).count())
+}
+
+#[bench]
+fn bench_non_ascii_char_to_lowercase(b: &mut Bencher) {
+    b.iter(|| (128..=255).cycle().take(10_000).map(|b| char::from(b).to_lowercase()).count())
+}