pcc 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:
> > JDevlieghere wrote:
> > > 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
> > With a mask of 1111111 isn't it
> > 
> > b55 == 1: m | ha == 1111111
> > b55 == 0: ~m & la == 0000000
> > 
> > I think you can just remove lines 5569-5570 here as well as lines 819-820 
> > from D100521.
> urk.  my caveat that I often confuse myself with these has been proven true. 
> :) 
> 
> So you're suggesting the default, uninitialized, mask is 0.  If we have that, 
> then
> 
> mask 0, low address 0001011, high address 1111011
> b55 == 1: m | ha == 1111011
> b55 == 0: ~m & la == 0001011
> 
> In the mask, any bit set to 0 is passed through as-is.  Any bit set to 1 is 
> going to be cleared or set in these FixAddress methods.  I see.
Yes, exactly.


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

Reply via email to