diff options
author | Jan Hubicka <jh@suse.cz> | 2002-08-27 18:01:34 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2002-08-27 16:01:34 +0000 |
commit | 23327dae1f4c8d09fe38b91da074195a945e8123 (patch) | |
tree | 03b2a31b52dd0b9beca20734a7fa454dc53feebd | |
parent | c49439f11242a706e036abed21a70ac547cdaac7 (diff) | |
download | gcc-23327dae1f4c8d09fe38b91da074195a945e8123.zip gcc-23327dae1f4c8d09fe38b91da074195a945e8123.tar.gz gcc-23327dae1f4c8d09fe38b91da074195a945e8123.tar.bz2 |
* i386.c (classify_argument): Properly compute word size of the analyzed object.
From-SVN: r56602
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/i386/i386.c | 2 |
2 files changed, 5 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index bb1ab08..4d0a4eb 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +Tue Aug 27 18:00:11 CEST 2002 Jan Hubicka <jh@suse.cz> + + * i386.c (classify_argument): Properly compute word size of the analyzed object. + Tue Aug 27 14:39:09 2002 J"orn Rennecke <joern.rennecke@superh.com> * sh.md (attribute type): Add types mt_group, fload, pcfload, fpul_gp, diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 2f66a01..7635037 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -1592,7 +1592,7 @@ classify_argument (mode, type, classes, bit_offset) { int bytes = (mode == BLKmode) ? int_size_in_bytes (type) : (int) GET_MODE_SIZE (mode); - int words = (bytes + UNITS_PER_WORD - 1) / UNITS_PER_WORD; + int words = (bytes + (bit_offset % 64) / 8 + UNITS_PER_WORD - 1) / UNITS_PER_WORD; if (type && AGGREGATE_TYPE_P (type)) { |