JDevlieghere added inline comments.
================ Comment at: lldb/source/Core/Mangled.cpp:61 + // Swift's older style of mangling used "_T" as a mangling prefix. This can + // lead to false positives with other symbols that just so happen to start ---------------- aprantl wrote: > fdeazeve wrote: > > JDevlieghere wrote: > > > aprantl wrote: > > > > Feel free to completely ignore this, it's a pointless micro > > > > optimization. > > > > > > > > I'm curious if it would be more efficient to write this as > > > > > > > > ``` > > > > switch (name[0]) { > > > > case '?': return Mangled::eManglingSchemeMSVC; > > > > case '_': > > > > switch(name[1]) { > > > > ... > > > > } > > > > case '$': > > > > switch(name[1]) { > > > > ... > > > > } > > > > ``` > > > > or if it would actually be slower than the chain of "vector" > > > > comparisons we have right now? > > > I actually started writing a similar comment before discarding it. Even > > > if this code is as hot as I expect it to be, I don't think it would > > > outweigh the complexity and the potential for bugs. I really like how you > > > can glance at the code and see the different mangling schemes and that's > > > the first thing we'd lose. Anyway happy to be proven wrong too. > > Honestly the optimizer is pretty good at doing those, look at the IR: > > https://godbolt.org/z/PY3TeadbM > Sounds good, let's leave it! > > Just trolling now: should we use some crazy #ifdef magic to flip the order > based on the host platform, such the `?` comes first on windows and `$` comes > first on Darwin? Did someone say tablegen? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D158470/new/ https://reviews.llvm.org/D158470 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits