JDevlieghere added inline comments.
================ Comment at: lldb/source/Target/Process.cpp:5569-5570 + + if (m_code_address_mask == 0) + return -1; // All bits are used for addressing. + ---------------- jasonmolenda wrote: > pcc wrote: > > Is this part correct? (Same below.) In D100521 you have > > ``` > > if (pc & pac_sign_extension) > > return pc | mask; > > return pc & (~mask); > > ``` > > So it looks like this would cause the pc to be set to 0 (or -1)? > I get confused so I like to do this by hand quickly to make sure I understand. > > given mask of 1110000 and addr of xxx1011 where 'x' are PAC bits, > > b55 == 1: m | a == 1111011 > b55 == 0: ~m & a == 0001011 > > given mask of 1111111, low address 0001011 and high address 1111011, > > b55 == 1: m & ha == ha > b55 == 0: ~m | la == la > > am I not thinking of something that could unify these? I can confuse myself > so easily with these things. > > We could also detect a mask of -1 and just return the original address in > FixCodeAddress/FixDataAddress, right. That would be very simple. I've added checking for -1 in D100521 CHANGES SINCE LAST ACTION https://reviews.llvm.org/D100515/new/ https://reviews.llvm.org/D100515 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits