aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKushal Pal <kushalpal109@gmail.com>2024-08-28 06:39:28 +0000
committerP-E-P <32375388+P-E-P@users.noreply.github.com>2024-09-09 08:33:02 +0000
commit65b00cc654cc16e298eec1c3fa8836d8659f7807 (patch)
tree814b53e0dc5823da47d406c0faa7eb1ae8675e47
parent4a6cccfbf18b4bd0594a9d50c508f0e139c7558c (diff)
downloadgcc-65b00cc654cc16e298eec1c3fa8836d8659f7807.zip
gcc-65b00cc654cc16e298eec1c3fa8836d8659f7807.tar.gz
gcc-65b00cc654cc16e298eec1c3fa8836d8659f7807.tar.bz2
Used `IndexVec` for place_map
gcc/rust/ChangeLog: * checks/errors/borrowck/rust-bir-dump.cc (Dump::go): Use strong type instead of size_t. (Dump::visit_place): Likewise. (Dump::visit_scope): Likewise. * checks/errors/borrowck/rust-bir-dump.h (class Dump): Use IndeVec for place_map. Signed-off-by: Kushal Pal <kushalpal109@gmail.com>
-rw-r--r--gcc/rust/checks/errors/borrowck/rust-bir-dump.cc10
-rw-r--r--gcc/rust/checks/errors/borrowck/rust-bir-dump.h2
2 files changed, 6 insertions, 6 deletions
diff --git a/gcc/rust/checks/errors/borrowck/rust-bir-dump.cc b/gcc/rust/checks/errors/borrowck/rust-bir-dump.cc
index 080029a..abc45a8 100644
--- a/gcc/rust/checks/errors/borrowck/rust-bir-dump.cc
+++ b/gcc/rust/checks/errors/borrowck/rust-bir-dump.cc
@@ -121,9 +121,9 @@ Dump::go (bool enable_simplify_cfg)
{
bb_fold_map[i] = i;
}
- for (size_t i = 0; i < place_map.size (); ++i)
+ for (PlaceId i = INVALID_PLACE; i.value < place_map.size (); ++i.value)
{
- place_map[i] = {i};
+ place_map[i] = i;
}
if (enable_simplify_cfg)
@@ -133,7 +133,7 @@ Dump::go (bool enable_simplify_cfg)
stream << "fn " << name << "(";
print_comma_separated (stream, func.arguments, [this] (PlaceId place_id) {
- stream << "_" << place_map[place_id.value].value << ": "
+ stream << "_" << place_map[place_id].value << ": "
<< get_tyty_name (func.place_db[place_id].tyty);
});
stream << ") -> " << get_tyty_name (func.place_db[RETURN_VALUE_PLACE].tyty);
@@ -245,7 +245,7 @@ Dump::visit_place (PlaceId place_id)
{
case Place::TEMPORARY:
case Place::VARIABLE:
- stream << "_" << place_map[place_id.value].value;
+ stream << "_" << place_map[place_id].value;
break;
case Place::DEREF:
stream << "(";
@@ -382,7 +382,7 @@ Dump::visit_scope (ScopeId id, size_t depth)
for (auto &local : scope.locals)
{
indent (depth + 1) << "let _";
- stream << place_map[local.value].value << ": "
+ stream << place_map[local].value << ": "
<< get_tyty_name (func.place_db[local].tyty);
stream << ";\t";
diff --git a/gcc/rust/checks/errors/borrowck/rust-bir-dump.h b/gcc/rust/checks/errors/borrowck/rust-bir-dump.h
index 4f2bb2a..63efb59 100644
--- a/gcc/rust/checks/errors/borrowck/rust-bir-dump.h
+++ b/gcc/rust/checks/errors/borrowck/rust-bir-dump.h
@@ -35,7 +35,7 @@ class Dump : public Visitor
const std::string &name;
IndexVec<BasicBlockId, BasicBlockId> bb_fold_map;
- std::vector<PlaceId> place_map;
+ IndexVec<PlaceId, PlaceId> place_map;
PlaceId statement_place = INVALID_PLACE;
BasicBlockId statement_bb = INVALID_BB;