Skip to content

Implementation of fmt::FormattingOptions #118159

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 17 commits into from
Dec 7, 2024
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
17 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Fixed funky_arms (broken mir-opt test due to refactoring fmt::Formatt…
…ingOptions)
  • Loading branch information
EliasHolzmann committed Dec 5, 2024
commit a282d5d30eb1c897428e120472b84460fd9faf65
Original file line number Diff line number Diff line change
Expand Up @@ -7,46 +7,30 @@
debug upper => _3;
let mut _0: std::result::Result<(), std::fmt::Error>;
let _4: bool;
let mut _6: std::option::Option<usize>;
let mut _7: isize;
let mut _9: &mut std::fmt::Formatter<'_>;
let mut _10: &T;
let mut _11: core::num::flt2dec::Sign;
let mut _12: u32;
let mut _5: &std::fmt::Formatter<'_>;
let mut _7: std::option::Option<usize>;
let mut _8: isize;
let mut _10: &mut std::fmt::Formatter<'_>;
let mut _11: &T;
let mut _12: core::num::flt2dec::Sign;
let mut _13: u32;
let mut _14: usize;
let mut _15: bool;
let mut _16: &mut std::fmt::Formatter<'_>;
let mut _17: &T;
let mut _18: core::num::flt2dec::Sign;
let mut _19: bool;
let mut _14: u32;
let mut _15: usize;
let mut _16: bool;
let mut _17: &mut std::fmt::Formatter<'_>;
let mut _18: &T;
let mut _19: core::num::flt2dec::Sign;
let mut _20: bool;
scope 1 {
debug force_sign => _4;
let _5: core::num::flt2dec::Sign;
let _6: core::num::flt2dec::Sign;
scope 2 {
debug sign => _5;
debug sign => _6;
scope 3 {
debug precision => _8;
let _8: usize;
scope 11 (inlined Formatter::<'_>::precision) {
scope 12 (inlined FormattingOptions::get_precision) {
}
}
}
}
}
scope 4 (inlined Formatter::<'_>::sign_plus) {
let _20: std::option::Option<std::fmt::Sign>;
scope 5 (inlined FormattingOptions::get_sign) {
}
scope 6 (inlined <Option<std::fmt::Sign> as PartialEq>::eq) {
let mut _21: isize;
scope 7 {
scope 8 (inlined <std::fmt::Sign as PartialEq>::eq) {
let _22: isize;
scope 9 {
scope 10 {
}
debug precision => _9;
let _9: usize;
scope 4 (inlined Formatter::<'_>::precision) {
scope 5 (inlined FormattingOptions::get_precision) {
}
}
}
Expand All @@ -55,118 +39,102 @@

bb0: {
StorageLive(_4);
StorageLive(_20);
_20 = copy (((*_1).0: std::fmt::FormattingOptions).0: std::option::Option<std::fmt::Sign>);
StorageLive(_21);
_21 = discriminant(_20);
switchInt(move _21) -> [0: bb11, 1: bb12, otherwise: bb10];
StorageLive(_5);
_5 = &(*_1);
_4 = Formatter::<'_>::sign_plus(move _5) -> [return: bb1, unwind unreachable];
}

bb1: {
- _5 = MinusPlus;
+ _5 = const MinusPlus;
goto -> bb3;
StorageDead(_5);
StorageLive(_6);
switchInt(copy _4) -> [0: bb3, otherwise: bb2];
}

bb2: {
- _5 = core::num::flt2dec::Sign::Minus;
+ _5 = const core::num::flt2dec::Sign::Minus;
goto -> bb3;
- _6 = MinusPlus;
+ _6 = const MinusPlus;
goto -> bb4;
}

bb3: {
StorageLive(_6);
_6 = copy (((*_1).0: std::fmt::FormattingOptions).6: std::option::Option<usize>);
_7 = discriminant(_6);
switchInt(move _7) -> [1: bb4, 0: bb6, otherwise: bb10];
- _6 = core::num::flt2dec::Sign::Minus;
+ _6 = const core::num::flt2dec::Sign::Minus;
goto -> bb4;
}

bb4: {
- StorageLive(_8);
StorageLive(_7);
_7 = copy (((*_1).0: std::fmt::FormattingOptions).4: std::option::Option<usize>);
_8 = discriminant(_7);
switchInt(move _8) -> [1: bb5, 0: bb7, otherwise: bb10];
}

bb5: {
- StorageLive(_9);
+ nop;
_8 = copy ((_6 as Some).0: usize);
StorageLive(_9);
_9 = copy _1;
_9 = copy ((_7 as Some).0: usize);
StorageLive(_10);
_10 = copy _2;
_10 = copy _1;
StorageLive(_11);
_11 = copy _5;
_11 = copy _2;
StorageLive(_12);
_12 = copy _6;
StorageLive(_13);
StorageLive(_14);
_14 = copy _8;
- _13 = move _14 as u32 (IntToInt);
+ _13 = copy _8 as u32 (IntToInt);
StorageDead(_14);
_12 = Add(move _13, const 1_u32);
StorageDead(_13);
StorageLive(_15);
_15 = copy _3;
- _0 = float_to_exponential_common_exact::<T>(move _9, move _10, move _11, move _12, move _15) -> [return: bb5, unwind unreachable];
+ _0 = float_to_exponential_common_exact::<T>(copy _1, copy _2, move _11, move _12, copy _3) -> [return: bb5, unwind unreachable];
_15 = copy _9;
- _14 = move _15 as u32 (IntToInt);
+ _14 = copy _9 as u32 (IntToInt);
StorageDead(_15);
_13 = Add(move _14, const 1_u32);
StorageDead(_14);
StorageLive(_16);
_16 = copy _3;
- _0 = float_to_exponential_common_exact::<T>(move _10, move _11, move _12, move _13, move _16) -> [return: bb6, unwind unreachable];
+ _0 = float_to_exponential_common_exact::<T>(copy _1, copy _2, move _12, move _13, copy _3) -> [return: bb6, unwind unreachable];
}

bb5: {
StorageDead(_15);
bb6: {
StorageDead(_16);
StorageDead(_13);
StorageDead(_12);
StorageDead(_11);
StorageDead(_10);
StorageDead(_9);
- StorageDead(_8);
- StorageDead(_9);
+ nop;
goto -> bb8;
goto -> bb9;
}

bb6: {
StorageLive(_16);
_16 = copy _1;
bb7: {
StorageLive(_17);
_17 = copy _2;
_17 = copy _1;
StorageLive(_18);
_18 = copy _5;
_18 = copy _2;
StorageLive(_19);
_19 = copy _3;
- _0 = float_to_exponential_common_shortest::<T>(move _16, move _17, move _18, move _19) -> [return: bb7, unwind unreachable];
+ _0 = float_to_exponential_common_shortest::<T>(copy _1, copy _2, move _18, copy _3) -> [return: bb7, unwind unreachable];
_19 = copy _6;
StorageLive(_20);
_20 = copy _3;
- _0 = float_to_exponential_common_shortest::<T>(move _17, move _18, move _19, move _20) -> [return: bb8, unwind unreachable];
+ _0 = float_to_exponential_common_shortest::<T>(copy _1, copy _2, move _19, copy _3) -> [return: bb8, unwind unreachable];
}

bb7: {
bb8: {
StorageDead(_20);
StorageDead(_19);
StorageDead(_18);
StorageDead(_17);
StorageDead(_16);
goto -> bb8;
goto -> bb9;
}

bb8: {
StorageDead(_5);
StorageDead(_4);
bb9: {
StorageDead(_6);
StorageDead(_4);
StorageDead(_7);
return;
}

bb9: {
StorageDead(_21);
StorageDead(_20);
StorageLive(_5);
switchInt(copy _4) -> [0: bb2, otherwise: bb1];
}

bb10: {
unreachable;
}

bb11: {
_4 = const false;
goto -> bb9;
}

bb12: {
StorageLive(_22);
_22 = discriminant(((_20 as Some).0: std::fmt::Sign));
_4 = Eq(copy _22, const 0_isize);
StorageDead(_22);
goto -> bb9;
}
}

Loading