public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH] Fix for PR libstdc++/60758
@ 2014-04-04 10:43 Alexey Merzlyakov
  2014-04-09  8:06 ` Alexey Merzlyakov
  0 siblings, 1 reply; 14+ messages in thread
From: Alexey Merzlyakov @ 2014-04-04 10:43 UTC (permalink / raw)
  To: gcc-patches; +Cc: Viacheslav Garbuzov, Yury Gribov

Hi all,

Here is a patch, that fixes infinite backtraces in __cxa_end_cleanup().
The Bugzilla entry for this:http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60758

The __cxa_end_cleanup() does not save/restore LR in function header/footer and does not provide any unwind info,
which causes problems with GDB and other tools (e.g. unwind code in libgcc, libbacktrace, etc.).

Best regards,
Merzlyakov Alexey

2014-04-03  Alexey Merzlyakov  <alexey.merzlyakov@samsung.com>

	PR libstdc++/60758
	* libsupc++/eh_arm.cc (__cxa_end_cleanup): Add LR save/restore.
  
diff --git a/libstdc++-v3/libsupc++/eh_arm.cc b/libstdc++-v3/libsupc++/eh_arm.cc
index aa453dd..ead1e61 100644
--- a/libstdc++-v3/libsupc++/eh_arm.cc
+++ b/libstdc++-v3/libsupc++/eh_arm.cc
@@ -206,9 +206,9 @@ asm ("  .pushsection .text.__cxa_end_cleanup\n"
  "	.type __cxa_end_cleanup, \"function\"\n"
  "	.thumb_func\n"
  "__cxa_end_cleanup:\n"
-"	push\t{r1, r2, r3, r4}\n"
+"	push\t{r1, r2, r3, r4, lr}\n"
  "	bl\t__gnu_end_cleanup\n"
-"	pop\t{r1, r2, r3, r4}\n"
+"	pop\t{r1, r2, r3, r4, lr}\n"
  "	bl\t_Unwind_Resume @ Never returns\n"
  "	.popsection\n");
  #else
@@ -216,9 +216,9 @@ asm ("  .pushsection .text.__cxa_end_cleanup\n"
  "	.global __cxa_end_cleanup\n"
  "	.type __cxa_end_cleanup, \"function\"\n"
  "__cxa_end_cleanup:\n"
-"	stmfd\tsp!, {r1, r2, r3, r4}\n"
+"	stmfd\tsp!, {r1, r2, r3, r4, lr}\n"
  "	bl\t__gnu_end_cleanup\n"
-"	ldmfd\tsp!, {r1, r2, r3, r4}\n"
+"	ldmfd\tsp!, {r1, r2, r3, r4, lr}\n"
  "	bl\t_Unwind_Resume @ Never returns\n"
  "	.popsection\n");
  #endif

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] Fix for PR libstdc++/60758
  2014-04-04 10:43 [PATCH] Fix for PR libstdc++/60758 Alexey Merzlyakov
@ 2014-04-09  8:06 ` Alexey Merzlyakov
  2014-04-09 11:12   ` Ramana Radhakrishnan
  0 siblings, 1 reply; 14+ messages in thread
From: Alexey Merzlyakov @ 2014-04-09  8:06 UTC (permalink / raw)
  To: gcc-patches; +Cc: Viacheslav Garbuzov, Yury Gribov

On 04.04.2014 14:44, Alexey Merzlyakov wrote:
> Hi all,
>
> Here is a patch, that fixes infinite backtraces in __cxa_end_cleanup().
> The Bugzilla entry for 
> this:http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60758
>
> The __cxa_end_cleanup() does not save/restore LR in function 
> header/footer and does not provide any unwind info,
> which causes problems with GDB and other tools (e.g. unwind code in 
> libgcc, libbacktrace, etc.).
>
> Best regards,
> Merzlyakov Alexey
>
> 2014-04-03  Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
>
>     PR libstdc++/60758
>     * libsupc++/eh_arm.cc (__cxa_end_cleanup): Add LR save/restore.
>
> diff --git a/libstdc++-v3/libsupc++/eh_arm.cc 
> b/libstdc++-v3/libsupc++/eh_arm.cc
> index aa453dd..ead1e61 100644
> --- a/libstdc++-v3/libsupc++/eh_arm.cc
> +++ b/libstdc++-v3/libsupc++/eh_arm.cc
> @@ -206,9 +206,9 @@ asm ("  .pushsection .text.__cxa_end_cleanup\n"
>  "    .type __cxa_end_cleanup, \"function\"\n"
>  "    .thumb_func\n"
>  "__cxa_end_cleanup:\n"
> -"    push\t{r1, r2, r3, r4}\n"
> +"    push\t{r1, r2, r3, r4, lr}\n"
>  "    bl\t__gnu_end_cleanup\n"
> -"    pop\t{r1, r2, r3, r4}\n"
> +"    pop\t{r1, r2, r3, r4, lr}\n"
>  "    bl\t_Unwind_Resume @ Never returns\n"
>  "    .popsection\n");
>  #else
> @@ -216,9 +216,9 @@ asm ("  .pushsection .text.__cxa_end_cleanup\n"
>  "    .global __cxa_end_cleanup\n"
>  "    .type __cxa_end_cleanup, \"function\"\n"
>  "__cxa_end_cleanup:\n"
> -"    stmfd\tsp!, {r1, r2, r3, r4}\n"
> +"    stmfd\tsp!, {r1, r2, r3, r4, lr}\n"
>  "    bl\t__gnu_end_cleanup\n"
> -"    ldmfd\tsp!, {r1, r2, r3, r4}\n"
> +"    ldmfd\tsp!, {r1, r2, r3, r4, lr}\n"
>  "    bl\t_Unwind_Resume @ Never returns\n"
>  "    .popsection\n");
>  #endif
>

Forgot to mention:
the patch has been tested on ARM - no regressions.

Best regards,
Merzlyakov Alexey

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] Fix for PR libstdc++/60758
  2014-04-09  8:06 ` Alexey Merzlyakov
@ 2014-04-09 11:12   ` Ramana Radhakrishnan
  2014-04-10 13:28     ` Alexey Merzlyakov
  0 siblings, 1 reply; 14+ messages in thread
From: Ramana Radhakrishnan @ 2014-04-09 11:12 UTC (permalink / raw)
  To: Alexey Merzlyakov; +Cc: gcc-patches, Viacheslav Garbuzov, Yury Gribov

On 04/09/14 09:07, Alexey Merzlyakov wrote:
> On 04.04.2014 14:44, Alexey Merzlyakov wrote:
>> Hi all,
>>
>> Here is a patch, that fixes infinite backtraces in __cxa_end_cleanup().
>> The Bugzilla entry for
>> this:http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60758
>>
>> The __cxa_end_cleanup() does not save/restore LR in function
>> header/footer and does not provide any unwind info,

So, your patch saves / restores LR to allow the prologue parser in GDB 
to get this right and still doesn't provide unwind info. It would be 
better to make that work correctly as well while you are here by 
providing the appropriate cfi directives.

>> which causes problems with GDB and other tools (e.g. unwind code in
>> libgcc, libbacktrace, etc.).
>>
>> Best regards,
>> Merzlyakov Alexey
>>
>> 2014-04-03  Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
>>
>>      PR libstdc++/60758
>>      * libsupc++/eh_arm.cc (__cxa_end_cleanup): Add LR save/restore.
>>
>> diff --git a/libstdc++-v3/libsupc++/eh_arm.cc
>> b/libstdc++-v3/libsupc++/eh_arm.cc
>> index aa453dd..ead1e61 100644
>> --- a/libstdc++-v3/libsupc++/eh_arm.cc
>> +++ b/libstdc++-v3/libsupc++/eh_arm.cc
>> @@ -206,9 +206,9 @@ asm ("  .pushsection .text.__cxa_end_cleanup\n"
>>   "    .type __cxa_end_cleanup, \"function\"\n"
>>   "    .thumb_func\n"
>>   "__cxa_end_cleanup:\n"
>> -"    push\t{r1, r2, r3, r4}\n"
>> +"    push\t{r1, r2, r3, r4, lr}\n"

So if you are doing that please replace r4 by lr ? r4 is a callee save 
register and is purely used here to keep stack alignment to 64 bits. Not 
doing that isn't ideal here even though things will work because 
__cxa_end_cleanup is part of this.

>>   "    bl\t__gnu_end_cleanup\n"
>> -"    pop\t{r1, r2, r3, r4}\n"
>> +"    pop\t{r1, r2, r3, r4, lr}\n"
>>   "    bl\t_Unwind_Resume @ Never returns\n"
>>   "    .popsection\n");
>>   #else
>> @@ -216,9 +216,9 @@ asm ("  .pushsection .text.__cxa_end_cleanup\n"
>>   "    .global __cxa_end_cleanup\n"
>>   "    .type __cxa_end_cleanup, \"function\"\n"
>>   "__cxa_end_cleanup:\n"
>> -"    stmfd\tsp!, {r1, r2, r3, r4}\n"
>> +"    stmfd\tsp!, {r1, r2, r3, r4, lr}\n"

and likewise.

>>   "    bl\t__gnu_end_cleanup\n"
>> -"    ldmfd\tsp!, {r1, r2, r3, r4}\n"
>> +"    ldmfd\tsp!, {r1, r2, r3, r4, lr}\n"
>>   "    bl\t_Unwind_Resume @ Never returns\n"
>>   "    .popsection\n");
>>   #endif
>>
>
> Forgot to mention:
> the patch has been tested on ARM - no regressions.

And by that what do you mean ?

arm-eabi , arm-linux-gnueabi(hf) with / without Neon, ARM state / Thumb 
state ?



regards
Ramana

>
> Best regards,
> Merzlyakov Alexey
>


-- 
Ramana Radhakrishnan
Principal Engineer
ARM Ltd.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] Fix for PR libstdc++/60758
  2014-04-09 11:12   ` Ramana Radhakrishnan
@ 2014-04-10 13:28     ` Alexey Merzlyakov
  2014-04-17 13:59       ` [PING] " Alexey Merzlyakov
  0 siblings, 1 reply; 14+ messages in thread
From: Alexey Merzlyakov @ 2014-04-10 13:28 UTC (permalink / raw)
  To: Ramana Radhakrishnan; +Cc: gcc-patches, Viacheslav Garbuzov, Yury Gribov

On 09.04.2014 15:12, Ramana Radhakrishnan wrote:
> On 04/09/14 09:07, Alexey Merzlyakov wrote:
>> On 04.04.2014 14:44, Alexey Merzlyakov wrote:
>>> Hi all,
>>>
>>> Here is a patch, that fixes infinite backtraces in __cxa_end_cleanup().
>>> The Bugzilla entry for
>>> this:http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60758
>>>
>>> The __cxa_end_cleanup() does not save/restore LR in function
>>> header/footer and does not provide any unwind info,
>
> So, your patch saves / restores LR to allow the prologue parser in GDB 
> to get this right and still doesn't provide unwind info. It would be 
> better to make that work correctly as well while you are here by 
> providing the appropriate cfi directives.
>
>>> which causes problems with GDB and other tools (e.g. unwind code in
>>> libgcc, libbacktrace, etc.).
>>>
>>> Best regards,
>>> Merzlyakov Alexey
>>>
>>> 2014-04-03  Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
>>>
>>>      PR libstdc++/60758
>>>      * libsupc++/eh_arm.cc (__cxa_end_cleanup): Add LR save/restore.
>>>
>>> diff --git a/libstdc++-v3/libsupc++/eh_arm.cc
>>> b/libstdc++-v3/libsupc++/eh_arm.cc
>>> index aa453dd..ead1e61 100644
>>> --- a/libstdc++-v3/libsupc++/eh_arm.cc
>>> +++ b/libstdc++-v3/libsupc++/eh_arm.cc
>>> @@ -206,9 +206,9 @@ asm ("  .pushsection .text.__cxa_end_cleanup\n"
>>>   "    .type __cxa_end_cleanup, \"function\"\n"
>>>   "    .thumb_func\n"
>>>   "__cxa_end_cleanup:\n"
>>> -"    push\t{r1, r2, r3, r4}\n"
>>> +"    push\t{r1, r2, r3, r4, lr}\n"
>
> So if you are doing that please replace r4 by lr ? r4 is a callee save 
> register and is purely used here to keep stack alignment to 64 bits. 
> Not doing that isn't ideal here even though things will work because 
> __cxa_end_cleanup is part of this.
>
>>>   "    bl\t__gnu_end_cleanup\n"
>>> -"    pop\t{r1, r2, r3, r4}\n"
>>> +"    pop\t{r1, r2, r3, r4, lr}\n"
>>>   "    bl\t_Unwind_Resume @ Never returns\n"
>>>   "    .popsection\n");
>>>   #else
>>> @@ -216,9 +216,9 @@ asm ("  .pushsection .text.__cxa_end_cleanup\n"
>>>   "    .global __cxa_end_cleanup\n"
>>>   "    .type __cxa_end_cleanup, \"function\"\n"
>>>   "__cxa_end_cleanup:\n"
>>> -"    stmfd\tsp!, {r1, r2, r3, r4}\n"
>>> +"    stmfd\tsp!, {r1, r2, r3, r4, lr}\n"
>
> and likewise.
>
>>>   "    bl\t__gnu_end_cleanup\n"
>>> -"    ldmfd\tsp!, {r1, r2, r3, r4}\n"
>>> +"    ldmfd\tsp!, {r1, r2, r3, r4, lr}\n"
>>>   "    bl\t_Unwind_Resume @ Never returns\n"
>>>   "    .popsection\n");
>>>   #endif
>>>
>>
>> Forgot to mention:
>> the patch has been tested on ARM - no regressions.
>
> And by that what do you mean ?
>
> arm-eabi , arm-linux-gnueabi(hf) with / without Neon, ARM state / 
> Thumb state ?
>
>
>
> regards
> Ramana
>
>>
>> Best regards,
>> Merzlyakov Alexey
>>
>
>

Ok, got it. The patch fixed accordingly:
* Restored proper stack alignment.
* Added unwinding directives.

Updated patch re-tested again on arm-linux-gnueabi(sf):
$ arm-linux-gnueabi-gcc -v
   Using built-in specs.
   COLLECT_GCC=./arm-linux-gnueabi-gcc
COLLECT_LTO_WRAPPER=/home/alexey.merzlyakov/arm/libexec/gcc/arm-linux-gnueabi/4.9.0/lto-wrapper
   Target: arm-linux-gnueabi
   Configured with: ../gcc-src/configure --host=i686-pc-linux-gnu 
--target=arm-linux-gnueabi --prefix=/home/alexey.merzlyakov/arm 
--with-sysroot=/home/alexey.merzlyakov/arm/arm-linux-gnueabi/sys-root 
--disable-libmudflap --disable-libssp --with-mode=arm --with-fpu=vfpv3 
--with-cpu=cortex-a15 --with-tune=cortex-a15 --with-float=softfp 
--disable-libatomic --disable-libgomp --enable-languages=c,c++ 
--with-gmp=/home/alexey.merzlyakov/arm 
--with-mpfr=/home/alexey.merzlyakov/arm 
--with-mpc=/home/alexey.merzlyakov/arm
   Thread model: posix
   gcc version 4.9.0 20140403 (experimental) (GCC)

Is this enough or should I test other platforms?

Best regards,
Merzlyakov Alexey

2014-04-03  Alexey Merzlyakov <alexey.merzlyakov@samsung.com>

     PR libstdc++/60758
     * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in 
save/restore.

diff --git a/libstdc++-v3/libsupc++/eh_arm.cc 
b/libstdc++-v3/libsupc++/eh_arm.cc
index aa453dd..f49ad4f 100644
--- a/libstdc++-v3/libsupc++/eh_arm.cc
+++ b/libstdc++-v3/libsupc++/eh_arm.cc
@@ -199,27 +199,34 @@ asm (".global __cxa_end_cleanup\n"
  "    nop        5\n");
  #else
  // Assembly wrapper to call __gnu_end_cleanup without clobbering r1-r3.
-// Also push r4 to preserve stack alignment.
+// Additionally push lr to preserve stack alignment and to allow
+// backtracing.
  #ifdef __thumb__
  asm ("  .pushsection .text.__cxa_end_cleanup\n"
  "    .global __cxa_end_cleanup\n"
  "    .type __cxa_end_cleanup, \"function\"\n"
  "    .thumb_func\n"
  "__cxa_end_cleanup:\n"
-"    push\t{r1, r2, r3, r4}\n"
+"    .fnstart\n"
+"    push\t{r1, r2, r3, lr}\n"
+"    .save\t{r1, r2, r3, lr}\n"
  "    bl\t__gnu_end_cleanup\n"
-"    pop\t{r1, r2, r3, r4}\n"
+"    pop\t{r1, r2, r3, lr}\n"
  "    bl\t_Unwind_Resume @ Never returns\n"
+"    .fnend\n"
  "    .popsection\n");
  #else
  asm ("  .pushsection .text.__cxa_end_cleanup\n"
  "    .global __cxa_end_cleanup\n"
  "    .type __cxa_end_cleanup, \"function\"\n"
  "__cxa_end_cleanup:\n"
-"    stmfd\tsp!, {r1, r2, r3, r4}\n"
+"    .fnstart\n"
+"    stmfd\tsp!, {r1, r2, r3, lr}\n"
+"    .save\t{r1, r2, r3, lr}\n"
  "    bl\t__gnu_end_cleanup\n"
-"    ldmfd\tsp!, {r1, r2, r3, r4}\n"
+"    ldmfd\tsp!, {r1, r2, r3, lr}\n"
  "    bl\t_Unwind_Resume @ Never returns\n"
+"    .fnend\n"
  "    .popsection\n");
  #endif
  #endif

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PING] [PATCH] Fix for PR libstdc++/60758
  2014-04-10 13:28     ` Alexey Merzlyakov
@ 2014-04-17 13:59       ` Alexey Merzlyakov
  2014-05-07  8:19         ` [PATCH] [PING^2] " Yury Gribov
  0 siblings, 1 reply; 14+ messages in thread
From: Alexey Merzlyakov @ 2014-04-17 13:59 UTC (permalink / raw)
  To: Ramana Radhakrishnan; +Cc: gcc-patches, Viacheslav Garbuzov, Yury Gribov

Hi,

This fixes infinite backtrace in __cxa_end_cleanup().
Regtest was finished with no regressions on arm-linux-gnueabi(sf).

The patch posted at:
   http://gcc.gnu.org/ml/gcc-patches/2014-04/msg00496.html

Thanks in advance.

Best regards,
Merzlyakov Alexey

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH] [PING^2] Fix for PR libstdc++/60758
  2014-04-17 13:59       ` [PING] " Alexey Merzlyakov
@ 2014-05-07  8:19         ` Yury Gribov
  2014-05-07  8:52           ` Paolo Carlini
  2014-05-07  9:28           ` Ramana Radhakrishnan
  0 siblings, 2 replies; 14+ messages in thread
From: Yury Gribov @ 2014-05-07  8:19 UTC (permalink / raw)
  To: GCC Patches; +Cc: Ramana Radhakrishnan, Viacheslav Garbuzov, Alexey Merzlyakov

[-- Attachment #1: Type: text/plain, Size: 625 bytes --]

-------- Original Message --------
Subject: [PING] [PATCH] Fix for PR libstdc++/60758
Date: Thu, 17 Apr 2014 17:48:12 +0400
From: Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
To: Ramana Radhakrishnan <ramrad01@arm.com>
CC: gcc-patches@gcc.gnu.org <gcc-patches@gcc.gnu.org>, Viacheslav 
Garbuzov <v.garbuzov@samsung.com>, Yury Gribov <y.gribov@samsung.com>

Hi,

This fixes infinite backtrace in __cxa_end_cleanup().
Regtest was finished with no regressions on arm-linux-gnueabi(sf).

The patch posted at:
   http://gcc.gnu.org/ml/gcc-patches/2014-04/msg00496.html

Thanks in advance.

Best regards,
Merzlyakov Alexey




[-- Attachment #2: cxa_end_cleanup_1.diff --]
[-- Type: text/x-diff, Size: 1551 bytes --]

2014-05-07  Alexey Merzlyakov <alexey.merzlyakov@samsung.com>

	PR libstdc++/60758
	* libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
	and add unwind directives.

diff --git a/libstdc++-v3/libsupc++/eh_arm.cc b/libstdc++-v3/libsupc++/eh_arm.cc
index aa453dd..6a45af5 100644
--- a/libstdc++-v3/libsupc++/eh_arm.cc
+++ b/libstdc++-v3/libsupc++/eh_arm.cc
@@ -199,27 +199,33 @@ asm (".global __cxa_end_cleanup\n"
 "	nop		5\n");
 #else
 // Assembly wrapper to call __gnu_end_cleanup without clobbering r1-r3.
-// Also push r4 to preserve stack alignment.
+// Also push lr to preserve stack alignment and to allow backtracing.
 #ifdef __thumb__
 asm ("  .pushsection .text.__cxa_end_cleanup\n"
 "	.global __cxa_end_cleanup\n"
 "	.type __cxa_end_cleanup, \"function\"\n"
 "	.thumb_func\n"
 "__cxa_end_cleanup:\n"
-"	push\t{r1, r2, r3, r4}\n"
+"	.fnstart\n"
+"	push\t{r1, r2, r3, lr}\n"
+"	.save\t{r1, r2, r3, lr}\n"
 "	bl\t__gnu_end_cleanup\n"
-"	pop\t{r1, r2, r3, r4}\n"
+"	pop\t{r1, r2, r3, lr}\n"
 "	bl\t_Unwind_Resume @ Never returns\n"
+"	.fnend\n"
 "	.popsection\n");
 #else
 asm ("  .pushsection .text.__cxa_end_cleanup\n"
 "	.global __cxa_end_cleanup\n"
 "	.type __cxa_end_cleanup, \"function\"\n"
 "__cxa_end_cleanup:\n"
-"	stmfd\tsp!, {r1, r2, r3, r4}\n"
+"	.fnstart\n"
+"	stmfd\tsp!, {r1, r2, r3, lr}\n"
+"	.save\t{r1, r2, r3, lr}\n"
 "	bl\t__gnu_end_cleanup\n"
-"	ldmfd\tsp!, {r1, r2, r3, r4}\n"
+"	ldmfd\tsp!, {r1, r2, r3, lr}\n"
 "	bl\t_Unwind_Resume @ Never returns\n"
+"	.fnend\n"
 "	.popsection\n");
 #endif
 #endif

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] [PING^2] Fix for PR libstdc++/60758
  2014-05-07  8:19         ` [PATCH] [PING^2] " Yury Gribov
@ 2014-05-07  8:52           ` Paolo Carlini
  2014-05-07  9:28           ` Ramana Radhakrishnan
  1 sibling, 0 replies; 14+ messages in thread
From: Paolo Carlini @ 2014-05-07  8:52 UTC (permalink / raw)
  To: Yury Gribov, GCC Patches
  Cc: Ramana Radhakrishnan, Viacheslav Garbuzov, Alexey Merzlyakov,
	libstdc++,
	nickc, Richard Earnshaw

Hi,

On 05/07/2014 10:19 AM, Yury Gribov wrote:
> -------- Original Message --------
> Subject: [PING] [PATCH] Fix for PR libstdc++/60758
> Date: Thu, 17 Apr 2014 17:48:12 +0400
> From: Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
> To: Ramana Radhakrishnan <ramrad01@arm.com>
> CC: gcc-patches@gcc.gnu.org <gcc-patches@gcc.gnu.org>, Viacheslav 
> Garbuzov <v.garbuzov@samsung.com>, Yury Gribov <y.gribov@samsung.com>
>
> Hi,
>
> This fixes infinite backtrace in __cxa_end_cleanup().
> Regtest was finished with no regressions on arm-linux-gnueabi(sf).
>
> The patch posted at:
>   http://gcc.gnu.org/ml/gcc-patches/2014-04/msg00496.html
I think you want an ARM maintainer for this. I'm adding some in CC. 
Also, remember to send patches touching the C++ library to the mailing 
list too.

Paolo.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] [PING^2] Fix for PR libstdc++/60758
  2014-05-07  8:19         ` [PATCH] [PING^2] " Yury Gribov
  2014-05-07  8:52           ` Paolo Carlini
@ 2014-05-07  9:28           ` Ramana Radhakrishnan
  2014-05-16 13:55             ` Alexey Merzlyakov
  1 sibling, 1 reply; 14+ messages in thread
From: Ramana Radhakrishnan @ 2014-05-07  9:28 UTC (permalink / raw)
  To: Yury Gribov; +Cc: GCC Patches, Viacheslav Garbuzov, Alexey Merzlyakov

On 05/07/14 09:19, Yury Gribov wrote:
> -------- Original Message --------
> Subject: [PING] [PATCH] Fix for PR libstdc++/60758
> Date: Thu, 17 Apr 2014 17:48:12 +0400
> From: Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
> To: Ramana Radhakrishnan <ramrad01@arm.com>
> CC: gcc-patches@gcc.gnu.org <gcc-patches@gcc.gnu.org>, Viacheslav
> Garbuzov <v.garbuzov@samsung.com>, Yury Gribov <y.gribov@samsung.com>
>
> Hi,
>
> This fixes infinite backtrace in __cxa_end_cleanup().
> Regtest was finished with no regressions on arm-linux-gnueabi(sf).
>
> The patch posted at:
>     http://gcc.gnu.org/ml/gcc-patches/2014-04/msg00496.html

This is OK to apply if no regressions.

Thanks,
Ramana

>
> Thanks in advance.
>
> Best regards,
> Merzlyakov Alexey
>
>

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] [PING^2] Fix for PR libstdc++/60758
  2014-05-07  9:28           ` Ramana Radhakrishnan
@ 2014-05-16 13:55             ` Alexey Merzlyakov
  2014-05-20 12:25               ` Richard Earnshaw
  0 siblings, 1 reply; 14+ messages in thread
From: Alexey Merzlyakov @ 2014-05-16 13:55 UTC (permalink / raw)
  To: Ramana Radhakrishnan; +Cc: Yury Gribov, GCC Patches, Viacheslav Garbuzov

On 07.05.2014 13:28, Ramana Radhakrishnan wrote:
> On 05/07/14 09:19, Yury Gribov wrote:
>> -------- Original Message --------
>> Subject: [PING] [PATCH] Fix for PR libstdc++/60758
>> Date: Thu, 17 Apr 2014 17:48:12 +0400
>> From: Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
>> To: Ramana Radhakrishnan <ramrad01@arm.com>
>> CC: gcc-patches@gcc.gnu.org <gcc-patches@gcc.gnu.org>, Viacheslav
>> Garbuzov <v.garbuzov@samsung.com>, Yury Gribov <y.gribov@samsung.com>
>>
>> Hi,
>>
>> This fixes infinite backtrace in __cxa_end_cleanup().
>> Regtest was finished with no regressions on arm-linux-gnueabi(sf).
>>
>> The patch posted at:
>>     http://gcc.gnu.org/ml/gcc-patches/2014-04/msg00496.html
>
> This is OK to apply if no regressions.
>
> Thanks,
> Ramana
>
>>
>> Thanks in advance.
>>
>> Best regards,
>> Merzlyakov Alexey
>>
>>
>
I have re-tested it again on arm-linux-gnueabi(sf) - no regressions.
The change was committed to mainline as revision 210515.

Best regards,
Merzlyakov Alexey

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] [PING^2] Fix for PR libstdc++/60758
  2014-05-16 13:55             ` Alexey Merzlyakov
@ 2014-05-20 12:25               ` Richard Earnshaw
  2014-05-20 13:11                 ` Alexey Merzlyakov
  0 siblings, 1 reply; 14+ messages in thread
From: Richard Earnshaw @ 2014-05-20 12:25 UTC (permalink / raw)
  To: Alexey Merzlyakov
  Cc: Ramana Radhakrishnan, Yury Gribov, GCC Patches, Viacheslav Garbuzov

On 16/05/14 14:56, Alexey Merzlyakov wrote:
> On 07.05.2014 13:28, Ramana Radhakrishnan wrote:
>> On 05/07/14 09:19, Yury Gribov wrote:
>>> -------- Original Message --------
>>> Subject: [PING] [PATCH] Fix for PR libstdc++/60758
>>> Date: Thu, 17 Apr 2014 17:48:12 +0400
>>> From: Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
>>> To: Ramana Radhakrishnan <ramrad01@arm.com>
>>> CC: gcc-patches@gcc.gnu.org <gcc-patches@gcc.gnu.org>, Viacheslav
>>> Garbuzov <v.garbuzov@samsung.com>, Yury Gribov <y.gribov@samsung.com>
>>>
>>> Hi,
>>>
>>> This fixes infinite backtrace in __cxa_end_cleanup().
>>> Regtest was finished with no regressions on arm-linux-gnueabi(sf).
>>>
>>> The patch posted at:
>>>     http://gcc.gnu.org/ml/gcc-patches/2014-04/msg00496.html
>>
>> This is OK to apply if no regressions.
>>
>> Thanks,
>> Ramana
>>
>>>
>>> Thanks in advance.
>>>
>>> Best regards,
>>> Merzlyakov Alexey
>>>
>>>
>>
> I have re-tested it again on arm-linux-gnueabi(sf) - no regressions.
> The change was committed to mainline as revision 210515.
> 
> Best regards,
> Merzlyakov Alexey
> 
> 

Unfortunately, this breaks thumb1.  Pop instructions there can only
contain low registers and the PC.

R.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] [PING^2] Fix for PR libstdc++/60758
  2014-05-20 12:25               ` Richard Earnshaw
@ 2014-05-20 13:11                 ` Alexey Merzlyakov
  2014-05-20 13:12                   ` Ramana Radhakrishnan
  0 siblings, 1 reply; 14+ messages in thread
From: Alexey Merzlyakov @ 2014-05-20 13:11 UTC (permalink / raw)
  To: Richard Earnshaw
  Cc: Ramana Radhakrishnan, Yury Gribov, GCC Patches, Viacheslav Garbuzov


On 20.05.2014 16:25, Richard Earnshaw wrote:
> On 16/05/14 14:56, Alexey Merzlyakov wrote:
>> On 07.05.2014 13:28, Ramana Radhakrishnan wrote:
>>> On 05/07/14 09:19, Yury Gribov wrote:
>>>> -------- Original Message --------
>>>> Subject: [PING] [PATCH] Fix for PR libstdc++/60758
>>>> Date: Thu, 17 Apr 2014 17:48:12 +0400
>>>> From: Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
>>>> To: Ramana Radhakrishnan <ramrad01@arm.com>
>>>> CC: gcc-patches@gcc.gnu.org <gcc-patches@gcc.gnu.org>, Viacheslav
>>>> Garbuzov <v.garbuzov@samsung.com>, Yury Gribov <y.gribov@samsung.com>
>>>>
>>>> Hi,
>>>>
>>>> This fixes infinite backtrace in __cxa_end_cleanup().
>>>> Regtest was finished with no regressions on arm-linux-gnueabi(sf).
>>>>
>>>> The patch posted at:
>>>>      http://gcc.gnu.org/ml/gcc-patches/2014-04/msg00496.html
>>> This is OK to apply if no regressions.
>>>
>>> Thanks,
>>> Ramana
>>>
>>>> Thanks in advance.
>>>>
>>>> Best regards,
>>>> Merzlyakov Alexey
>>>>
>>>>
>> I have re-tested it again on arm-linux-gnueabi(sf) - no regressions.
>> The change was committed to mainline as revision 210515.
>>
>> Best regards,
>> Merzlyakov Alexey
>>
>>
> Unfortunately, this breaks thumb1.  Pop instructions there can only
> contain low registers and the PC.
>
> R.
>

The following PR is opened for this problem:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61223

Thumb1 failure was also detected and reported in pr60758.
I've proposed a thumb1 bugfix there. Regtest for the fix currently is in 
progress.

Best regards,
Merzlyakov Alexey

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] [PING^2] Fix for PR libstdc++/60758
  2014-05-20 13:11                 ` Alexey Merzlyakov
@ 2014-05-20 13:12                   ` Ramana Radhakrishnan
  2014-05-20 13:16                     ` Richard Earnshaw
  0 siblings, 1 reply; 14+ messages in thread
From: Ramana Radhakrishnan @ 2014-05-20 13:12 UTC (permalink / raw)
  To: Alexey Merzlyakov
  Cc: Richard Earnshaw, Yury Gribov, GCC Patches, Viacheslav Garbuzov


>
> The following PR is opened for this problem:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61223
>
> Thumb1 failure was also detected and reported in pr60758.
> I've proposed a thumb1 bugfix there. Regtest for the fix currently is in
> progress.

Patches must be proposed on gcc-patches and / or in this case 
libstdc++-patches mailing list. Attaching patches to bugzilla does not 
ensure review.

Thanks,
Ramana

>
> Best regards,
> Merzlyakov Alexey
>

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] [PING^2] Fix for PR libstdc++/60758
  2014-05-20 13:12                   ` Ramana Radhakrishnan
@ 2014-05-20 13:16                     ` Richard Earnshaw
  2014-05-20 16:12                       ` Alexey Merzlyakov
  0 siblings, 1 reply; 14+ messages in thread
From: Richard Earnshaw @ 2014-05-20 13:16 UTC (permalink / raw)
  To: Ramana Radhakrishnan
  Cc: Alexey Merzlyakov, Yury Gribov, GCC Patches, Viacheslav Garbuzov

On 20/05/14 14:12, Ramana Radhakrishnan wrote:
> 
>>
>> The following PR is opened for this problem:
>> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61223
>>
>> Thumb1 failure was also detected and reported in pr60758.
>> I've proposed a thumb1 bugfix there. Regtest for the fix currently is in
>> progress.
> 
> Patches must be proposed on gcc-patches and / or in this case 

Never OR.  Patches must always go to gcc-patches.  They may *also* go to
other lists, if appropriate.

R.

> libstdc++-patches mailing list. Attaching patches to bugzilla does not 
> ensure review.
> 
> Thanks,
> Ramana
> 
>>
>> Best regards,
>> Merzlyakov Alexey
>>
> 


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] [PING^2] Fix for PR libstdc++/60758
  2014-05-20 13:16                     ` Richard Earnshaw
@ 2014-05-20 16:12                       ` Alexey Merzlyakov
  0 siblings, 0 replies; 14+ messages in thread
From: Alexey Merzlyakov @ 2014-05-20 16:12 UTC (permalink / raw)
  To: Richard Earnshaw
  Cc: Ramana Radhakrishnan, Yury Gribov, GCC Patches, Viacheslav Garbuzov


On 20.05.2014 17:16, Richard Earnshaw wrote:
> On 20/05/14 14:12, Ramana Radhakrishnan wrote:
>>> The following PR is opened for this problem:
>>> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61223
>>>
>>> Thumb1 failure was also detected and reported in pr60758.
>>> I've proposed a thumb1 bugfix there. Regtest for the fix currently is in
>>> progress.
>> Patches must be proposed on gcc-patches and / or in this case
> Never OR.  Patches must always go to gcc-patches.  They may *also* go to
> other lists, if appropriate.
>
> R.
>
>> libstdc++-patches mailing list. Attaching patches to bugzilla does not
>> ensure review.
>>
>> Thanks,
>> Ramana
>>
>>> Best regards,
>>> Merzlyakov Alexey
>>>
Thanks, created a thread with proposed fix:
https://gcc.gnu.org/ml/gcc-patches/2014-05/msg01640.html

Best regards,
Merzlyakov Alexey

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2014-05-20 16:12 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-04-04 10:43 [PATCH] Fix for PR libstdc++/60758 Alexey Merzlyakov
2014-04-09  8:06 ` Alexey Merzlyakov
2014-04-09 11:12   ` Ramana Radhakrishnan
2014-04-10 13:28     ` Alexey Merzlyakov
2014-04-17 13:59       ` [PING] " Alexey Merzlyakov
2014-05-07  8:19         ` [PATCH] [PING^2] " Yury Gribov
2014-05-07  8:52           ` Paolo Carlini
2014-05-07  9:28           ` Ramana Radhakrishnan
2014-05-16 13:55             ` Alexey Merzlyakov
2014-05-20 12:25               ` Richard Earnshaw
2014-05-20 13:11                 ` Alexey Merzlyakov
2014-05-20 13:12                   ` Ramana Radhakrishnan
2014-05-20 13:16                     ` Richard Earnshaw
2014-05-20 16:12                       ` Alexey Merzlyakov

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).