[PATCH] D114275: [lld-macho] Include Objective-C functions in LC_FUNCTION_STARTS

Keith Smiley via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Nov 19 17:11:41 PST 2021


keith added inline comments.


================
Comment at: lld/MachO/SyntheticSections.cpp:800-813
+  for (const InputFile *file : inputFiles) {
+    if (auto *objFile = dyn_cast<ObjFile>(file)) {
+      for (const Symbol *sym : objFile->symbols) {
+        if (const auto *defined = dyn_cast_or_null<Defined>(sym)) {
+          if (!defined->isec || !isCodeSection(defined->isec) ||
+              !defined->isLive())
+            continue;
----------------
oontvoo wrote:
> keith wrote:
> > oontvoo wrote:
> > > Do you happen to have performance data for this change?
> > > seems like it could take a hit here , esp. for cases where the number of input files is large - ie., most of our apps :) 
> > > 
> > > On the other hand, I agree debug experience is important... 
> > > 
> > I've haven't tested this on our large links yet so I'll have to check, I agree, I felt bad writing this
> How would people feel about making this configurable? ( either via making up some new flag or grouping it into an existing one)
Maybe -no-function-starts is enough for this level of configuration? We actually have that enabled today for our builds for binary size.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D114275/new/

https://reviews.llvm.org/D114275



More information about the llvm-commits mailing list