* [PATCH][AARCH64]End frame record chain correctly
@ 2014-10-31 14:30 Renlin Li
2014-11-05 10:53 ` Marcus Shawcroft
2014-11-06 14:51 ` [PING] [PATCH][AARCH64]End frame record chain correctly Renlin Li
0 siblings, 2 replies; 10+ messages in thread
From: Renlin Li @ 2014-10-31 14:30 UTC (permalink / raw)
To: libc-alpha; +Cc: marcus Shawcroft
[-- Attachment #1: Type: text/plain, Size: 1148 bytes --]
Hi all,
This is a simple patch to make the end of frame record chain correctly
according to AArch64 AAPCS.
Currently, the FP(x29) is overwritten by SP in the very beginning of _start.
aarch64-none-linux-gnueabi target has been tested on the model. No new
issues.
Is this Okay to commit?
From the Procedure Call Standard for ARM 64-bit Architecture
documentation:
"Conforming code shall construct a linked list of stack-frames. Each
frame shall link to the frame of its caller by means of a frame record
of two 64-bit values on the stack. The frame record for the innermost
frame (belonging to the most recent routine invocation) shall be pointed
to by the Frame Pointer register (FP). The lowest addressed double-word
shall point to the previous frame record and the highest addressed
double-word shall contain the value passed in LR on entry to the current
function. The end of the frame record chain is indicated by the address
zero in the address for the previous frame."
ChangeLog:
2014-10-31 Renlin Li <Renlin.Li@arm.com>
* sysdeps/aarch64/start.S: Delete x29 overwritten assignment.
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: diff.patch --]
[-- Type: text/x-patch; name=diff.patch, Size: 340 bytes --]
diff --git a/sysdeps/aarch64/start.S b/sysdeps/aarch64/start.S
index 35d603a..69b45ea 100644
--- a/sysdeps/aarch64/start.S
+++ b/sysdeps/aarch64/start.S
@@ -47,7 +47,6 @@ _start:
/* Create an initial frame with 0 LR and FP */
mov x29, #0
mov x30, #0
- mov x29, sp
/* Setup rtld_fini in argument register */
mov x5, x0
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH][AARCH64]End frame record chain correctly
2014-10-31 14:30 [PATCH][AARCH64]End frame record chain correctly Renlin Li
@ 2014-11-05 10:53 ` Marcus Shawcroft
2014-11-10 10:54 ` Renlin Li
2014-11-10 11:24 ` [PATCH][AARCH64][2.20] Backporting "End frame record chain correctly" Renlin Li
2014-11-06 14:51 ` [PING] [PATCH][AARCH64]End frame record chain correctly Renlin Li
1 sibling, 2 replies; 10+ messages in thread
From: Marcus Shawcroft @ 2014-11-05 10:53 UTC (permalink / raw)
To: Renlin Li; +Cc: GNU C Library
On 31 October 2014 14:30, Renlin Li <renlin.li@arm.com> wrote:
> Hi all,
>
> This is a simple patch to make the end of frame record chain correctly
> according to AArch64 AAPCS.
> Currently, the FP(x29) is overwritten by SP in the very beginning of _start.
>
> aarch64-none-linux-gnueabi target has been tested on the model. No new
> issues.
Surely aarch64-none-linux-gnu ;-)
The bugzilla # for this is 17555:
> ChangeLog:
>
> 2014-10-31 Renlin Li <Renlin.Li@arm.com>
>
> * sysdeps/aarch64/start.S: Delete x29 overwritten assignment.
Don't forget the () part of the ChangeLog entry. Add a reference to
the bugzilla ticket:
[BZ #17555]
* sysdeps/aarch64/start.S (_start): Delete x29 overwritten assignment.
Please also add 17555 to the 2.21 section of the NEWS file.
Can you back port this to 2.20 and 2.19 please.
Thanks
/Marcus
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PING] [PATCH][AARCH64]End frame record chain correctly
2014-10-31 14:30 [PATCH][AARCH64]End frame record chain correctly Renlin Li
2014-11-05 10:53 ` Marcus Shawcroft
@ 2014-11-06 14:51 ` Renlin Li
2014-11-06 15:21 ` Carlos O'Donell
1 sibling, 1 reply; 10+ messages in thread
From: Renlin Li @ 2014-11-06 14:51 UTC (permalink / raw)
To: libc-alpha; +Cc: marcus Shawcroft
Hi all,
can anybody help to review this?
Regards,
Renlin Li
On 31/10/14 14:30, Renlin Li wrote:
> Hi all,
>
> This is a simple patch to make the end of frame record chain correctly
> according to AArch64 AAPCS.
> Currently, the FP(x29) is overwritten by SP in the very beginning of
> _start.
>
> aarch64-none-linux-gnueabi target has been tested on the model. No new
> issues.
>
> Is this Okay to commit?
>
>
> From the Procedure Call Standard for ARM 64-bit Architecture
> documentation:
> "Conforming code shall construct a linked list of stack-frames. Each
> frame shall link to the frame of its caller by means of a frame record
> of two 64-bit values on the stack. The frame record for the innermost
> frame (belonging to the most recent routine invocation) shall be
> pointed to by the Frame Pointer register (FP). The lowest addressed
> double-word shall point to the previous frame record and the highest
> addressed double-word shall contain the value passed in LR on entry to
> the current function. The end of the frame record chain is indicated
> by the address zero in the address for the previous frame."
>
>
>
> ChangeLog:
>
> 2014-10-31 Renlin Li <Renlin.Li@arm.com>
>
> * sysdeps/aarch64/start.S: Delete x29 overwritten assignment.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PING] [PATCH][AARCH64]End frame record chain correctly
2014-11-06 14:51 ` [PING] [PATCH][AARCH64]End frame record chain correctly Renlin Li
@ 2014-11-06 15:21 ` Carlos O'Donell
0 siblings, 0 replies; 10+ messages in thread
From: Carlos O'Donell @ 2014-11-06 15:21 UTC (permalink / raw)
To: Renlin Li, libc-alpha; +Cc: marcus Shawcroft
On 11/06/2014 09:51 AM, Renlin Li wrote:
> can anybody help to review this?
Please avoid top posting.
Marcus seems to have reviewed it yesterday.
You need to repost your patch with the changes requested
and ask the AArch64 machine maintainer to check it in for
you if you don't have commit access.
Marcus also asked you to provide 2.19 and 2.20 patches.
Cheers,
Carlos.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH][AARCH64]End frame record chain correctly
2014-11-05 10:53 ` Marcus Shawcroft
@ 2014-11-10 10:54 ` Renlin Li
2014-11-11 15:02 ` Marcus Shawcroft
2014-11-10 11:24 ` [PATCH][AARCH64][2.20] Backporting "End frame record chain correctly" Renlin Li
1 sibling, 1 reply; 10+ messages in thread
From: Renlin Li @ 2014-11-10 10:54 UTC (permalink / raw)
To: Marcus Shawcroft; +Cc: GNU C Library
[-- Attachment #1: Type: text/plain, Size: 1365 bytes --]
On 05/11/14 10:53, Marcus Shawcroft wrote:
> On 31 October 2014 14:30, Renlin Li<renlin.li@arm.com> wrote:
>> Hi all,
>>
>> This is a simple patch to make the end of frame record chain correctly
>> according to AArch64 AAPCS.
>> Currently, the FP(x29) is overwritten by SP in the very beginning of _start.
>>
>> aarch64-none-linux-gnueabi target has been tested on the model. No new
>> issues.
> Surely aarch64-none-linux-gnu ;-)
>
> The bugzilla # for this is 17555:
>> ChangeLog:
>>
>> 2014-10-31 Renlin Li<Renlin.Li@arm.com>
>>
>> * sysdeps/aarch64/start.S: Delete x29 overwritten assignment.
> Don't forget the () part of the ChangeLog entry. Add a reference to
> the bugzilla ticket:
>
> [BZ #17555]
> * sysdeps/aarch64/start.S (_start): Delete x29 overwritten assignment.
>
> Please also add 17555 to the 2.21 section of the NEWS file.
>
> Can you back port this to 2.20 and 2.19 please.
>
> Thanks
> /Marcus
>
Hi Marcus,
Thank you for the suggestions! I have modified my patch and ChangeLog
accordingly.
The back port patches will come shortly.
aarch64-none-linux-gnu target has been tested on the model. No new issues.
Okay to commit?
ChangeLog:
2014-11-10 Renlin Li <Renlin.Li@arm.com>
[BZ #17555]
* sysdeps/aarch64/start.S (_start): Delete x29 overwritten assignment.
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: diff.patch --]
[-- Type: text/x-patch; name=diff.patch, Size: 645 bytes --]
diff --git a/NEWS b/NEWS
index ef98268..85c7ac3 100644
--- a/NEWS
+++ b/NEWS
@@ -9,7 +9,7 @@ Version 2.21
* The following bugs are resolved with this release:
- 6652, 14171, 17266, 17363, 17370, 17371, 17411.
+ 6652, 14171, 17266, 17363, 17370, 17371, 17411, 17555.
\f
Version 2.20
diff --git a/sysdeps/aarch64/start.S b/sysdeps/aarch64/start.S
index 35d603a..69b45ea 100644
--- a/sysdeps/aarch64/start.S
+++ b/sysdeps/aarch64/start.S
@@ -47,7 +47,6 @@ _start:
/* Create an initial frame with 0 LR and FP */
mov x29, #0
mov x30, #0
- mov x29, sp
/* Setup rtld_fini in argument register */
mov x5, x0
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH][AARCH64][2.20] Backporting "End frame record chain correctly"
2014-11-05 10:53 ` Marcus Shawcroft
2014-11-10 10:54 ` Renlin Li
@ 2014-11-10 11:24 ` Renlin Li
2014-11-10 11:26 ` Allan McRae
1 sibling, 1 reply; 10+ messages in thread
From: Renlin Li @ 2014-11-10 11:24 UTC (permalink / raw)
To: GNU C Library; +Cc: Marcus Shawcroft
[-- Attachment #1: Type: text/plain, Size: 436 bytes --]
Hi all,
This is a backport for branch/release/2.20/master of the patch "End
frame record chain correctly" posted in:
https://sourceware.org/ml/libc-alpha/2014-11/msg00167.html
aarch64-none-linux-gnu target has been tested on the model. No new issues.
Okay to commit?
ChangeLog:
2014-11-10 Renlin Li <Renlin.Li@arm.com>
[BZ #17555]
* sysdeps/aarch64/start.S (_start): Delete x29 overwritten assignment.
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 2-20.diff --]
[-- Type: text/x-patch; name=2-20.diff, Size: 340 bytes --]
diff --git a/sysdeps/aarch64/start.S b/sysdeps/aarch64/start.S
index 35d603a..69b45ea 100644
--- a/sysdeps/aarch64/start.S
+++ b/sysdeps/aarch64/start.S
@@ -47,7 +47,6 @@ _start:
/* Create an initial frame with 0 LR and FP */
mov x29, #0
mov x30, #0
- mov x29, sp
/* Setup rtld_fini in argument register */
mov x5, x0
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH][AARCH64][2.20] Backporting "End frame record chain correctly"
2014-11-10 11:24 ` [PATCH][AARCH64][2.20] Backporting "End frame record chain correctly" Renlin Li
@ 2014-11-10 11:26 ` Allan McRae
2014-11-11 14:13 ` Renlin Li
0 siblings, 1 reply; 10+ messages in thread
From: Allan McRae @ 2014-11-10 11:26 UTC (permalink / raw)
To: Renlin Li, GNU C Library; +Cc: Marcus Shawcroft
On 10/11/14 21:23, Renlin Li wrote:
> Hi all,
>
> This is a backport for branch/release/2.20/master of the patch "End
> frame record chain correctly" posted in:
> https://sourceware.org/ml/libc-alpha/2014-11/msg00167.html
>
> aarch64-none-linux-gnu target has been tested on the model. No new issues.
>
> Okay to commit?
>
> ChangeLog:
>
> 2014-11-10 Renlin Li <Renlin.Li@arm.com>
>
> [BZ #17555]
> * sysdeps/aarch64/start.S (_start): Delete x29 overwritten assignment.
OK.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH][AARCH64][2.20] Backporting "End frame record chain correctly"
2014-11-10 11:26 ` Allan McRae
@ 2014-11-11 14:13 ` Renlin Li
2014-11-11 15:18 ` Marcus Shawcroft
0 siblings, 1 reply; 10+ messages in thread
From: Renlin Li @ 2014-11-11 14:13 UTC (permalink / raw)
To: Allan McRae, GNU C Library; +Cc: Marcus Shawcroft
[-- Attachment #1: Type: text/plain, Size: 668 bytes --]
On 10/11/14 11:26, Allan McRae wrote:
> On 10/11/14 21:23, Renlin Li wrote:
>> Hi all,
>>
>> This is a backport for branch/release/2.20/master of the patch "End
>> frame record chain correctly" posted in:
>> https://sourceware.org/ml/libc-alpha/2014-11/msg00167.html
>>
>> aarch64-none-linux-gnu target has been tested on the model. No new issues.
>>
>> Okay to commit?
>>
>> ChangeLog:
>>
>> 2014-11-10 Renlin Li <Renlin.Li@arm.com>
>>
>> [BZ #17555]
>> * sysdeps/aarch64/start.S (_start): Delete x29 overwritten assignment.
> OK.
>
Hi,
I forgot the update the NEWS file, here comes the new patch with it.
Sorry for that.
Okay?
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 2-20-1.diff --]
[-- Type: text/x-patch; name=2-20-1.diff, Size: 621 bytes --]
diff --git a/NEWS b/NEWS
index 29229d7..1df7f5e 100644
--- a/NEWS
+++ b/NEWS
@@ -9,7 +9,7 @@ Version 2.20.1
* The following bugs are resolved with this release:
- 17266, 17370, 17371, 17460, 17485.
+ 17266, 17370, 17371, 17460, 17485, 17555.
\f
Version 2.20
diff --git a/sysdeps/aarch64/start.S b/sysdeps/aarch64/start.S
index 35d603a..69b45ea 100644
--- a/sysdeps/aarch64/start.S
+++ b/sysdeps/aarch64/start.S
@@ -47,7 +47,6 @@ _start:
/* Create an initial frame with 0 LR and FP */
mov x29, #0
mov x30, #0
- mov x29, sp
/* Setup rtld_fini in argument register */
mov x5, x0
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH][AARCH64]End frame record chain correctly
2014-11-10 10:54 ` Renlin Li
@ 2014-11-11 15:02 ` Marcus Shawcroft
0 siblings, 0 replies; 10+ messages in thread
From: Marcus Shawcroft @ 2014-11-11 15:02 UTC (permalink / raw)
To: Renlin Li; +Cc: GNU C Library
On 10 November 2014 10:54, Renlin Li <renlin.li@arm.com> wrote:
> Thank you for the suggestions! I have modified my patch and ChangeLog
> accordingly.
>
> The back port patches will come shortly.
>
>
> aarch64-none-linux-gnu target has been tested on the model. No new issues.
> Okay to commit?
Thanks, committed with NEWS update.
/Marcus
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH][AARCH64][2.20] Backporting "End frame record chain correctly"
2014-11-11 14:13 ` Renlin Li
@ 2014-11-11 15:18 ` Marcus Shawcroft
0 siblings, 0 replies; 10+ messages in thread
From: Marcus Shawcroft @ 2014-11-11 15:18 UTC (permalink / raw)
To: Renlin Li; +Cc: GNU C Library
On 11 November 2014 14:12, Renlin Li <renlin.li@arm.com> wrote:
> Hi,
>
> I forgot the update the NEWS file, here comes the new patch with it. Sorry
> for that.
>
> Okay?
Thanks. Committed.
/Marcus
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2014-11-11 15:18 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-10-31 14:30 [PATCH][AARCH64]End frame record chain correctly Renlin Li
2014-11-05 10:53 ` Marcus Shawcroft
2014-11-10 10:54 ` Renlin Li
2014-11-11 15:02 ` Marcus Shawcroft
2014-11-10 11:24 ` [PATCH][AARCH64][2.20] Backporting "End frame record chain correctly" Renlin Li
2014-11-10 11:26 ` Allan McRae
2014-11-11 14:13 ` Renlin Li
2014-11-11 15:18 ` Marcus Shawcroft
2014-11-06 14:51 ` [PING] [PATCH][AARCH64]End frame record chain correctly Renlin Li
2014-11-06 15:21 ` Carlos O'Donell
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).