a value that is potentially > 31. Casting it to (unsigned long)
is not enough on 32-bit platforms.
(create_state_record_for): Cast 0xf to (unw_word_t) instead of
(unsigned long) to avoid losing bits on 32-bit platforms.
(Logical change 1.92)
Linux kernel "struct pt_regs" layout.
(update_frame_state): Handle ABI_MARKER_OLD_LINUX_SIGTRAMP and
ABI_MARKRE_OLD_LINUX_INTERRUPT. Cast values of type unw_word_t
to (unsigned long) before printing them.
(Logical change 1.91)
(linux_scratch_loc): Add support for new pt_regs layout.
(access_nat): Check last_abi_marker instead of sigcontext_addr and
address-space ABI.
(Logical change 1.91)
(ABI_MARKER_OLD_LINUX_INTERRUPT): Rename from ABI_MARKER_LINUX_INTERRUPT.
(ABI_MARKER_LINUX_SIGTRAMP): Define with Linux ABI value (3).
(ABI_MARKER_LINUX_INTERRUPT): Ditto.
(Logical change 1.91)
into panda.mostang.com:/data/home/davidm/src/unwind/libunwind
2003/06/03 14:35:33-07:00 mostang.com!davidm
Fix bug reported by Brian Sumner:
Replace state_record_pool with reg_state_pool. This avoids allocating
more than the necessary amount of memory when pushing register states.
BKrev: 3edd14c3Z03JVOhew5snOIkekLUxfg
(update_frame_state): Handle ABI_MARKER_LINUX_INTERRUPT by calling linux_interrupt().
If c->abi_marker is non-zero, copy it to c->last_abi_marker.
(Logical change 1.89)
(access_reg) [HAVE_SYS_UC_ACCESS_H]: Sanitize and simplify this routine. Turns out
uc_access(3) works pretty much the way we need it, the only problem is that
the unwind info for getcontext() seems to be missing as of HP-UX 11.22.
(ia64_uc_access_reg): New function.
(ia64_uc_access_fpreg): Ditto.
(ia64_local_addr_space_init): Initialize "abi" member of local address space based
on the platform we're compiling on.
(Logical change 1.87)
nice backtrace, handling unwinding across signal handlers just fine. Main missing
piece right now is that unw_resume() doesn't work because uc_access(3) refuses to
write ar.bsp. Duh.
BKrev: 3ea84cd3PHuNw5JsGXBuCzkJLDGUcA
have an empty file here, as otherwise we won't get a valid program.
2003/04/24 12:58:16-07:00 mostang.com!davidm
Rename: src/ia64/Lmk_cursor_i-ia64.c -> src/ia64/mk_Lcursor_i-ia64.c
(Logical change 1.87)
(remote_install_cursor): Enable the short-cut for Linux only. Since HP-UX uses
an opaque data-structure for ucontext_t, we can't play the same trick
there. Fix two typos: "> 0" -> ">= 0".
(unw_resume): Handle non-UNW_LOCAL_ONLY case simp;u bu calling
remote_install_cursor().
(Logical change 1.87)
support for HP-UX.
(access_nat): Check for uc-location and pass it on to ia64_put()/ia64_get() if
it is. Handle NaT-bit-saved-in-scratch-register only for Linux.
(ia64_access_reg): Change dprintf() into debug() statement.
(ia64_access_fpreg): Move fph-partition initialization code to ia64_scratch_loc().
Change dprintf() into debug() statement.
(Logical change 1.87)
(foo): Add some newlines for better readability.
(sighandler): Always declare as per Single UNIX Spec.
On HP-UX, use __uc_get_ip() to read the interruption IP.
(main): Always use sigaction() to install a signal handler, so we can
turn on the SA_SIGINFO flag.
(Logical change 1.87)
end up not using it.
(UNWIND_TBL_32BIT): New macro.
(struct unwind_header): Rename "unknown1" member to "header_version".
(tdep_find_proc_info) [HAVE_DLMODINFO]: Don't forget to initialize di.gp.
Check unwind-header version and format.
(Logical change 1.87)
Rename Gmk_cursor to mk_Gcursor, Lmk_cursor to mk_Lcursor so to avoid
scripts/make-L-files overwriting the (handcrafted) local version.
(EXTRA_DIST): Mention libunwind_la_SOURCES_os_hpux.
(Logical change 1.87)
Update code to work both for UNW_LOCAL_ONLY-version of the cursor and the
generic version of the cursor.
(ia64_install_cursor): New macro.
}(Logical change 1.85)