public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* other/7620: gij doesn't work properly on SH port.
@ 2002-08-17 1:37 kkojima
0 siblings, 0 replies; only message in thread
From: kkojima @ 2002-08-17 1:37 UTC (permalink / raw)
To: gcc-gnats
>Number: 7620
>Category: other
>Synopsis: gij doesn't work properly on SH port.
>Confidential: no
>Severity: critical
>Priority: medium
>Responsible: unassigned
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Fri Aug 16 18:16:01 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator: kkojima@gcc.gnu.org
>Release: 3.3 20020808 (experimental)
>Organization:
>Environment:
host: sh4-unknown-linux-gnu
build: sh4-unknown-linux-gnu
target: sh4-unknown-linux-gnu
>Description:
Automatic variable sized array is clobbered when the sjlj
exception is threw.
Compiler generates the code which _Unwind_SjLj_Register is
called before allocating stack for a variable sized array
which is automatic variable. So the stack pointer is set
higher than such arrays when the exception threw, and the
contents of these arrays are clobbered.
>How-To-Repeat:
Compile the following source with cc1plus for sh4-unknown-linux-gnu
target configured with --enable-sjlj-exceptions and look its
output.
-- aa.cc --
void foo (int);
void bar (int *) throw (int);
int a;
void
f (int max_stack)
{
int aa[max_stack];
int *sp = aa;
try
{
bar (aa);
return;
}
catch (int e)
{
foo (e);
a = *sp;
}
}
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2002-08-17 1:16 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-08-17 1:37 other/7620: gij doesn't work properly on SH port kkojima
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).