Stack Reorganization Patch
Naveen Sharma, Noida
naveens@noida.hcltech.com
Tue Apr 15 08:32:00 GMT 2003
Hi,
Zack Weinberg wrote:
> > I get a segfault in gcc/flow.c in "static void
> mark_used_reg" Line 3622.
> > (gcc.c-torture/compile/20000127-1.c) when using stack pseudos.
>
> I believe the function of assign_386_stack_local is to create
> temporary stack slots which are live only for the execution of a
> single insn, and so can be reused whenever wanted again. This does
> seem a little silly given that there is assign_stack_temp that does
> almost the same thing.
>
> Try just ripping it out in favor of assign_stack_temp, see if that
> makes your code happy - there should be no optimization penalty since
> we're now doing proper allocation on stack slots.
Thanks for your reply. I made changes in my patch to adjust to
this issue. The regressions dis-appeared.
I have split the patch in two parts for people to review and analyze
easily.
Part #1 is the stack pseudos patch, where I generate stack pseudos but
do not reorganize the items.
Part #2 will be the heuristics to organize items in local frame.
When part #1 has got the approval, Then it is easy to review part #2.
I am attaching Part #1 of the patch with this mail.
Regtested for i386, sh, arm-elf, mips-elf.
There is one problem though. The TCs gcc.dg/debug/debug-2.c and debug-6.c
fail when -gstabs is specified. I need help with those.
Best Regards,
Naveen Sharma.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ChangeLog
Type: application/octet-stream
Size: 2907 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20030415/a786e1e5/attachment.obj>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: SRP_20030414.txt
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20030415/a786e1e5/attachment.txt>
More information about the Gcc-patches
mailing list