summaryrefslogtreecommitdiff
path: root/src/mir/dump.cpp
diff options
context:
space:
mode:
authorJohn Hodge <tpg@ucc.asn.au>2019-11-02 11:07:23 +0800
committerJohn Hodge <tpg@ucc.asn.au>2019-11-02 11:07:23 +0800
commit1d02810c3cf908bfba7c15ae50eb5314603b9d85 (patch)
tree79dd5e4ef4c3ff79db0912ba546f08e61a7a8c10 /src/mir/dump.cpp
parent7111acba04d72fe4084b1a1f3209ff83efe8614d (diff)
parent8b53b38f40625ab0510f541d69db3f83332a830a (diff)
downloadmrust-1d02810c3cf908bfba7c15ae50eb5314603b9d85.tar.gz
Merge branch 'nightly-1.29' - #95 Working support for rustc 1.29
Diffstat (limited to 'src/mir/dump.cpp')
-rw-r--r--src/mir/dump.cpp45
1 files changed, 6 insertions, 39 deletions
diff --git a/src/mir/dump.cpp b/src/mir/dump.cpp
index 90b81d5d..d41bef7c 100644
--- a/src/mir/dump.cpp
+++ b/src/mir/dump.cpp
@@ -176,51 +176,18 @@ namespace {
#undef FMT
}
void fmt_val(::std::ostream& os, const ::MIR::LValue& lval) {
- TU_MATCHA( (lval), (e),
- (Return,
- os << "RETURN";
- ),
- (Argument,
- os << "arg$" << e.idx;
- ),
- (Local,
- os << "_$" << e;
- ),
- (Static,
- os << e;
- ),
- (Field,
- os << "(";
- fmt_val(os, *e.val);
- os << ")." << e.field_index;
- ),
- (Deref,
- os << "*";
- fmt_val(os, *e.val);
- ),
- (Index,
- os << "(";
- fmt_val(os, *e.val);
- os << ")[";
- fmt_val(os, *e.idx);
- os << "]";
- ),
- (Downcast,
- fmt_val(os, *e.val);
- os << " as variant" << e.variant_index;
- )
- )
+ os << lval;
}
void fmt_val(::std::ostream& os, const ::MIR::Constant& e) {
TU_MATCHA( (e), (ce),
(Int,
- os << ce.v;
+ os << ce.v << "_" << ce.t;
),
(Uint,
- os << "0x" << ::std::hex << ce.v << ::std::dec;
+ os << "0x" << ::std::hex << ce.v << ::std::dec << "_" << ce.t;
),
(Float,
- os << ce.v;
+ os << ce.v << "_" << ce.t;
),
(Bool,
os << (ce.v ? "true" : "false");
@@ -244,10 +211,10 @@ namespace {
os << "\"" << ce << "\"";
),
(Const,
- os << ce.p;
+ os << *ce.p;
),
(ItemAddr,
- os << "addr " << ce;
+ os << "addr " << *ce;
)
)
}