slydiman wrote:

I have updated this patch. But it seems we can keep Language.h, ObjCLanguage.* 
and Module.cpp untouched, because `a proper way` is useless for our purpose. 
`CPlusPlusLanguage::MethodName`, `CPlusPlusLanguage::IsCPPMangledName` and 
`CPlusPlusLanguage::ExtractContextAndIdentifier` are used in the following 
files except Module.cpp:
```
source/Core/RichManglingContext.cpp
source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
```
So it is necessary to move out `CPlusPlusLanguage::MethodName` anyway.

But now there is the bigger problem. I have synched with mainline and something 
changed within 2 last weeks.
2 weeks ago this patch reduced the size from 17MB to 8MB.
Now the size is 18MB and this patch does not work anymore. 
source/Commands/CommandObjectTarget.cpp uses `clang::CompilerInstance 
compiler;` and it depends on `clang::ConstructionContextItem::getKindAsString`, 
which is GC root. I don't know what changed exactly. But now after this patch 
and commented out `clang::CompilerInstance` usage in CommandObjectTarget.cpp 
the size of lldb-server may be reduced to 9.6MB. I'm trying to figure out what 
exactly changed and how to fix it.

https://github.com/llvm/llvm-project/pull/132274
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to