================
@@ -71,8 +71,6 @@ std::pair<uint32_t, uint32_t>
 ABIAArch64::GetEHAndDWARFNums(llvm::StringRef name) {
   if (name == "pc")
     return {arm64_ehframe::pc, arm64_dwarf::pc};
-  if (name == "cpsr")
-    return {arm64_ehframe::cpsr, arm64_dwarf::cpsr};
----------------
jasonmolenda wrote:

regard eh_frame v. dwarf numbering, the distinction in lldb is entirely because 
of a bug in the i386 gcc on Darwin a couple of decades ago, where the rsp/rbp 
were flipped in eh_frame or dwarf, I forget.  Binaries shipped like that, so it 
became ABI on Darwin.

DWARF expressions/locations can't refer to cpsr, or fpsr.  If there was a need 
for an expression to refer to status registers, the ABI document for DWARF on 
AArch64 would need to define which numbers are used for those registers.  It's 
undefined because no one has ever needed them or seen an expression that would 
need them.

https://github.com/llvm/llvm-project/pull/183860
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to