mstorsjo added inline comments.

================
Comment at: src/libunwind.cpp:188
+      co->getInfo(&info);
+      pint_t orgArgSize = (pint_t)info.gp;
+      uint64_t orgFuncStart = info.start_ip;
----------------
rnk wrote:
> I think it makes sense to have this here: the contract is that if the 
> personality sets the IP when the cursor pointed to a PC with a non-zero arg 
> size, we should adjust SP for the personality.
> 
> However, it's not clear to me that we don't need the same adjustment when 
> stepping across frames that use arg size without a frame pointer.
When stepping across frames, the gnu args size is already included in, as part 
of the CFA offset, so with the current code, it steps too far.


https://reviews.llvm.org/D38680



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to