C++ exceptions doesn't work in i386 shared libs when using sjlj exceptions
(as a.out does per default.) This is because the compiler forgets to restore the PIC register after a builtin_setjmp (i.e. when catching an exception.) This fix is taken from the gcc 2.95 branch. Fixes PR#9110.
This commit is contained in:
parent
0cf304bb45
commit
46e954b5e5
|
@ -7816,3 +7816,12 @@ byte_xor_operation:
|
|||
load_pic_register (1);
|
||||
DONE;
|
||||
}")
|
||||
|
||||
(define_expand "builtin_setjmp_receiver"
|
||||
[(label_ref (match_operand 0 "" ""))]
|
||||
"flag_pic"
|
||||
"
|
||||
{
|
||||
load_pic_register (1);
|
||||
DONE;
|
||||
}")
|
||||
|
|
Loading…
Reference in New Issue