[Bug target/10142] [SPARC64] gcc produces wrong code when passing structures by value
cvs-commit@gcc.gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Jun 13 04:07:00 GMT 2003
PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=10142
------- Additional Comments From cvs-commit@gcc.gnu.org 2003-06-13 04:07 -------
Subject: Bug 10142
CVSROOT: /cvs/gcc
Module name: gcc
Branch: gcc-3_3-branch
Changes by: ebotcazou@gcc.gnu.org 2003-06-13 04:07:18
Modified files:
gcc : ChangeLog
gcc/config/sparc: sparc.c
Log message:
PR target/10142
* config/sparc/sparc.c (function_arg_record_value_parms): Add
new 'stack' field.
(function_arg_record_value_1): Set 'stack' to 1 if we run out of
integer slots for an integer field.
(function_arg_record_value_3): Shift vector index.
(function_arg_record_value_2): Likewise.
(function_arg_record_value): Initialize 'stack' to 0.
Set 'stack' to 1 if we run out of integer slots for an integer field.
Generate (parallel [(expr_list (nil) ...) ...]) if 'stack' is set to 1.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=1.16114.2.576&r2=1.16114.2.577
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/sparc/sparc.c.diff?cvsroot=gcc&only_with_tag=gcc-3_3-branch&r1=1.233.4.3&r2=1.233.4.4
More information about the Gcc-bugs
mailing list