https://sourceware.org/bugzilla/show_bug.cgi?id=20290
Bug ID: 20290 Summary: --section-ordering-file can be very slow Product: binutils Version: 2.27 (HEAD) Status: NEW Severity: normal Priority: P2 Component: gold Assignee: ccoutant at gmail dot com Reporter: hjl.tools at gmail dot com CC: ian at airs dot com Target Milestone: --- Gold has unsigned int Layout::find_section_order_index(const std::string& section_name) { Unordered_map<std::string, unsigned int>::iterator map_it; map_it = this->input_section_position_.find(section_name); if (map_it != this->input_section_position_.end()) return map_it->second; // Absolute match failed. Linear search the glob patterns. std::vector<std::string>::iterator it; for (it = this->input_section_glob_.begin(); it != this->input_section_glob_.end(); ++it) { if (fnmatch((*it).c_str(), section_name.c_str(), FNM_NOESCAPE) == 0) { map_it = this->input_section_position_.find(*it); gold_assert(map_it != this->input_section_position_.end()); return map_it->second; } } return 0; } When there are 6211 sections in section ordering file and 7187124 input sections which aren't on the section ordering list, it takes gold more than 3 hours to process these inputs on a fast machine. -- You are receiving this mail because: You are on the CC list for the bug. _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils