yaxunl added inline comments.

================
Comment at: lib/Transforms/IPO/FunctionImport.cpp:107
+static cl::opt<bool, true>
+ForceImportWeak("force-import-weak", cl::Hidden,
+                cl::desc("Allow weak functions to be imported"),
----------------
AlexVlx wrote:
> yaxunl wrote:
> > Is it possible not to expose this option through extern? Generally these 
> > options should be kept static.
> This seems to suggest that it is not utterly unacceptable: 
> http://llvm.org/docs/CommandLine.html#internal-vs-external-storage, and the 
> use case described there maps pretty closely to this, since the flag itself 
> must be accessible from two different TUs. Am I missing something?
OK. I did not notice that it is also used byFunctionImportUtils.cpp.


================
Comment at: lib/Transforms/Utils/FunctionImportUtils.cpp:153
     // definition and importing would change the order they are seen by the
     // linker. The module linking caller needs to enforce this.
+    if(!ForceImportWeakFlag)
----------------
If we link three modules, A, B, and C.

A calls function sin, B and C both contains function sin with weak linkage.

Which sin function will be linked?


Repository:
  rL LLVM

https://reviews.llvm.org/D39739



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to