Fangrui Song

Results 110 comments of Fangrui Song

The kernel page-in technique is indeed interesting. There are several ways encoding a relative relocation. In terms of space efficiency, I think the sorted order is: * ELF REL/RELA (most...

This option doesn't make sense and the converse (--no-copy-dt-needed-entries) has been the GNU ld default for a very long time (around 2.22/2.23). I am not even sure what software still...

Note: I think this works as intended, since there is no need to make -static --dynamic-linker non-orthogonal. GNU ld does have the behavior, because it uses complex conditions to decide...

Note: https://reviews.llvm.org/D128451 (milestone: lld 15.0.0) added `--time-trace=` and removed `--time-trace-file=`.

These options were legacy and we'd better avoid them. I have only seen the usage in very few pieces of software. At this point I have removed all I saw...

I think it is difficult to have a plugin to support both LLVM and GCC. plugin-api.h style `ld_plugin_symbol` is very different from LLVM `llvm::lto::SymbolResolution`.

`compile_commands.json` parsing is not too difficult and there are mature generators. You may check out https://github.com/nickdiego/compiledb and Buiding EAR.

I have a different/simplified cache implementation in https://github.com/MaskRay/ccls/blob/master/src/pipeline.cc It provides some interesting yet niche initialization options: * `clang.extraArgs` * `clang.pathMappings` * `index.trackDependency` * `index.initialBlacklist` I'd be very interested to know...

I think this is an Emacs problem. I find that lsp-ui-doc is quite slow and `(setq lsp-ui-doc-enable nil)` helps...

If you use something like `ccls --index $root`, there is a log at `src/indexer.cc:1367` ` LOG_S(ERROR)