This is the mail archive of the
gdb-cvs@sources.redhat.com
mailing list for the GDB project.
src/gdb s390-tdep.c ChangeLog
- From: jimb at sources dot redhat dot com
- To: gdb-cvs at sources dot redhat dot com
- Date: 1 Jul 2003 00:05:38 -0000
- Subject: src/gdb s390-tdep.c ChangeLog
CVSROOT: /cvs/src
Module name: src
Changes by: jimb@sourceware.org 2003-07-01 00:05:38
Modified files:
gdb : s390-tdep.c ChangeLog
Log message:
Patch from IBM (authors unspecified, probably Ulrich Weigand and
Gerhard Tonn) for argument passing on the S/390 and S/390x:
* s390-tdep.c (S390_STACK_FRAME_OVERHEAD): This is always space
for 16 registers, and then 32 more bytes.
(S390_STACK_PARAMETER_ALIGNMENT, S390_NUM_FP_PARAMETER_REGISTERS):
New macros.
(is_double_arg): The s390x doesn't handle DOUBLE_ARGS specially.
Move up in the file, since it's now used by is_simple_arg.
(is_simple_arg): Don't assume registers are four bytes long.
Exclude all double arguments. Extended floats are not simple
args.
(is_power_of_two): New function.
(pass_by_copy_ref): Call is_power_of_two, and check that the
length fits in a register, rather than listing all the acceptable
sizes. Extended floats are not passed by reference.
(s390_push_arguments): Don't assume registers are four bytes long.
Reserve an argument register to point to the buffer for structures
returned by value. Use S390_NUM_FP_PARAMETER_REGISTERS and
S390_STACK_FRAME_OVERHEAD.
Patches:
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/gdb/s390-tdep.c.diff?cvsroot=src&r1=1.105&r2=1.106
http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/gdb/ChangeLog.diff?cvsroot=src&r1=1.4471&r2=1.4472