Previously lldb was storing them but not restoring them. Meaning that this function:
void expr(uint64_t value) { __asm__ volatile("msr tpidr_el0, %0" ::"r"(value)); }
When run from lldb:
(lldb) expression expr()
Would leave tpidr as value instead of the original value of the register.
A check for this scenario has been added to TestAArch64LinuxTLSRegisters.py,
which covers tpidr and the SME excluisve tpidr2 register when it's present.