[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Libunwind-devel] [PATCH] restore "x0" and "x1" registers
From: |
cbergstrom |
Subject: |
Re: [Libunwind-devel] [PATCH] restore "x0" and "x1" registers |
Date: |
Sat, 04 Oct 2014 21:09:09 +0700 |
Did you guys need more details or can commit the patch. Thanks
Original Message
From: Arun Sharma
Sent: Wednesday, October 1, 2014 10:59
To: Yvan Roux
Cc: C Bergström; address@hidden
Subject: Re: [Libunwind-devel] [PATCH] restore "x0" and "x1" registers
On Tue, Sep 30, 2014 at 3:55 AM, Yvan Roux <address@hidden> wrote:
> Right, it is not specified in the AArch64 ABI that exception handlers
> arguments have reserved registers as it uses the standard convention
> to pass arguments, and in the GCC case only registers X0-X3 are used
> for that (it is what I've implemented in Gregs.c in this port).
> Thus, I think that they all have to be restored if they have been set
> before (i.e. the corresponding eh_valid_mask is true). Arun does it
> make sense ?
I'd try to use ia64 and x86_64 as reference code on this topic.
src/ia64/Gresume.c has some relevant comments on preserved vs scratch.
My understanding of the aarch64 code is:
(c->sigcontext_format == AARCH64_SCF_NONE) {
// normal path
} else {
// exception handling path
// eh_valid_mask is being looked at
}
What I'm not understanding is: how does the exception handling path
end up with AARCH64_SCF_NONE?
-Arun
- Re: [Libunwind-devel] [PATCH] restore "x0" and "x1" registers,
cbergstrom <=
- Re: [Libunwind-devel] [PATCH] restore "x0" and "x1" registers, Yvan Roux, 2014/10/06
- Re: [Libunwind-devel] [PATCH] restore "x0" and "x1" registers, C Bergström, 2014/10/07
- Re: [Libunwind-devel] [PATCH] restore "x0" and "x1" registers, C Bergström, 2014/10/08
- Re: [Libunwind-devel] [PATCH] restore "x0" and "x1" registers, Arun Sharma, 2014/10/09
- Re: [Libunwind-devel] [PATCH] restore "x0" and "x1" registers, cbergstrom, 2014/10/09
- Re: [Libunwind-devel] [PATCH] restore "x0" and "x1" registers, Arun Sharma, 2014/10/10
- Re: [Libunwind-devel] [PATCH] restore "x0" and "x1" registers, Yvan Roux, 2014/10/10
- Re: [Libunwind-devel] [PATCH] restore "x0" and "x1" registers, C Bergström, 2014/10/19
- Re: [Libunwind-devel] [PATCH] restore "x0" and "x1" registers, C Bergström, 2014/10/25