zturner added a comment. In https://reviews.llvm.org/D39436#912810, @clayborg wrote:
> I was unhappy when we went over two pointers for a FileSpec when m_syntax was > added due to the extra size. Anything we can do to make this smaller would be > great, so the type on the enum would work, but as you say the alignment will > nullify that. The two ConstString members contain a pointer which isn't > aligned so we can't use any bits from the low end of the pointer. Are there > any classes that take advantage of high bits in pointers? Most if not all > OS's don't use the entire 64 bit address space... It would be great to get > lldb_private::FileSpec down to just 2 pointers again. `ConstString` doesn't *currently* contain aligned pointers, but there's no reason we couldn't make it contain aligned pointers. Then we could use `llvm::PointerUnion`. That said, I want to state again that I think this change is the wrong direction. I don't think we need this functionality in `FileSpec`, or even in another class. I think it is better served in the script. https://reviews.llvm.org/D39436 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits