diff options
author | Richard Henderson <rth@redhat.com> | 2002-03-31 22:52:45 -0800 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2002-03-31 22:52:45 -0800 |
commit | 1d9ad0e01abe21fd3a4451471ed0eeeea40b9567 (patch) | |
tree | b23b08b95def63537011bd153dc8e3266c1bbb03 | |
parent | d875078437f3e2a604d702281b742b591bfbe7d0 (diff) | |
download | gcc-1d9ad0e01abe21fd3a4451471ed0eeeea40b9567.zip gcc-1d9ad0e01abe21fd3a4451471ed0eeeea40b9567.tar.gz gcc-1d9ad0e01abe21fd3a4451471ed0eeeea40b9567.tar.bz2 |
unwind-ia64.c (alloc_spill_area): Fix offset.
* config/ia64/unwind-ia64.c (alloc_spill_area): Fix offset.
(desc_frgr_mem): Fix reference to f16-f31.
From-SVN: r51679
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/ia64/unwind-ia64.c | 7 |
2 files changed, 9 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c97fd63..d7bc594 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2002-03-31 Richard Henderson <rth@redhat.com> + + * config/ia64/unwind-ia64.c (alloc_spill_area): Fix offset. + (desc_frgr_mem): Fix reference to f16-f31. + 2002-03-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> * rtl.h (RTL_CHECK1, RTL_CHECK2, RTL_CHECKC1, RTL_CHECKC2, diff --git a/gcc/config/ia64/unwind-ia64.c b/gcc/config/ia64/unwind-ia64.c index 52db9ac..2c1e356 100644 --- a/gcc/config/ia64/unwind-ia64.c +++ b/gcc/config/ia64/unwind-ia64.c @@ -342,8 +342,8 @@ alloc_spill_area (unsigned long *offp, unsigned long regsize, if (reg->where == UNW_WHERE_SPILL_HOME) { reg->where = UNW_WHERE_PSPREL; - reg->val = 0x10 - *offp; - *offp += regsize; + *offp -= regsize; + reg->val = *offp; } } } @@ -541,7 +541,8 @@ desc_frgr_mem (unsigned char grmask, unw_word frmask, { if ((frmask & 1) != 0) { - set_reg (sr->curr.reg + UNW_REG_F2 + i, UNW_WHERE_SPILL_HOME, + enum unw_register_index base = i < 4 ? UNW_REG_F2 : UNW_REG_F16 - 4; + set_reg (sr->curr.reg + base + i, UNW_WHERE_SPILL_HOME, sr->region_start + sr->region_len - 1, 0); sr->any_spills = 1; } |