https://gcc.gnu.org/g:65b00cc654cc16e298eec1c3fa8836d8659f7807

commit 65b00cc654cc16e298eec1c3fa8836d8659f7807
Author: Kushal Pal <kushalpal...@gmail.com>
Date:   Wed Aug 28 06:39:28 2024 +0000

    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 <kushalpal...@gmail.com>

Diff:
---
 gcc/rust/checks/errors/borrowck/rust-bir-dump.cc | 10 +++++-----
 gcc/rust/checks/errors/borrowck/rust-bir-dump.h  |  2 +-
 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 080029ac9d9e..abc45a84d0a8 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 4f2bb2acd8fe..63efb59f0062 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;

Reply via email to