[PATCH] sectiongroup support

Shankar Kalpathi Easwaran shankarke at gmail.com
Thu Mar 6 15:08:43 PST 2014


  For the slowness, we need to have a pass which processes atoms parallelly per file and set up flags on what kind of core references that it uses. This would speed up a lot as most of the loops are trying to discover if the atom has a reference that we need to deal with in the resolver/layoutpass.


================
Comment at: lib/Core/SymbolTable.cpp:51
@@ +50,3 @@
+    if (atom.contentType() == DefinedAtom::typeGroupComdat) {
+      this->addGroup(atom);
+      return;
----------------
Michael Spencer wrote:
> No `this->`.
Ok

================
Comment at: lib/Core/SymbolTable.cpp:300
@@ +299,3 @@
+      if (r->kindValue() == Reference::kindGroupChild)
+        this->addGroupChild(*r->target(), da);
+    }
----------------
Michael Spencer wrote:
> No `this->`.
Ok.

================
Comment at: lib/Core/SymbolTable.cpp:334
@@ +333,3 @@
+  // Catch an error if the user forgot to include the child in the parent.
+  if (!groupChildExistsinGroup(groupChild, groupParent)) {
+    llvm::errs() << "SymbolTable: error while merging " << name << "\n";
----------------
Michael Spencer wrote:
> Shouldn't this only be checked in asserts builds?
thanks, somehow got missed before sending it for review.


http://llvm-reviews.chandlerc.com/D2961



More information about the llvm-commits mailing list