This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH gold/21066] Consider C++ exception handling metadata during ICF


> Checking in several months later -- should I still be expecting this patch to eventually get reviewed?

Sorry for dropping the ball on this -- I've been busy with other
projects lately, and only just got back to reviewing your patch. I
wanted to be sure that I understood the performance implications and
the correctness of the changes you made to the file locking, and I
needed to be in a mood where I could wrap my head around it all.

Anyway, it looks to me like the patch is good. I only have a couple of comments:

+  // Maps section offset to the length of the CIE defined at that offset.
+  std::map<section_offset_type, section_size_type> cies;

Should use Unordered_map here. The defines in system.h will select the
best implementation of those available.

+   std::map<section_offset_type, section_size_type>::const_iterator it;

Likewise. To avoid repeating the type, we should probably define a
typedef for "Unordered_map<section_offset_type, section_size_type>":

typedef Unordered_map<section_offset_type, section_size_type> Cie_map;

+  typedef std::multimap<Section_id, Extra_identity_info> Extra_identity_list;

Should use Unordered_multimap.

+bool
+Icf::add_ehframe_links(Relobj* object, unsigned int ehframe_shndx,
+        Reloc_info& relocs)

I'd like to see a comment above this function.

If you agree with the use of Unordered_map and Unordered_multimap
above, let me know and I'll apply the patch for you with those
changes. And if you can write a brief comment about
Icf::add_ehframe_links(), I'll add it to the patch.

Apologies again for the delays! I really do appreciate your work on this.

-cary


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]