mostang.com!davidm
b49a5f35e1
Regenerate.
...
(Logical change 1.52)
2003-02-21 07:36:26 +00:00
mostang.com!davidm
84bdbf814d
Fix ia64 code to use the same modular-arithmetic based test to determine whether
...
or not a given address is part of a register-backing store. This test is implemented
by rbs_contains().
Fix and greatly simplify ia64 rbs-switching code. ia64-test-rbs now passes
100,000 iterations of random testing.
BKrev: 3e55d6farvnB-gMiDPTFoO1XVBzEtA
2003-02-21 07:36:26 +00:00
mostang.com!davidm
88c6bcd794
Add note that unw_resume() does NOT execute unwind-handlers (personality-routines).
...
(Logical change 1.52)
2003-02-21 07:36:26 +00:00
mostang.com!davidm
f0c37e1652
(unwind_and_resume): Correct argument printing.
...
(run_check): Limit unwind_count to range 1..(nfuncs+RECURSION_DEPTH).
Fix off-by-one but that counter-acted a bug in ia64-test-rbs-asm.S.
(Logical change 1.52)
2003-02-21 07:36:26 +00:00
mostang.com!davidm
c341225693
(struct cursor): Remove rbs_right_edge.
...
(Logical change 1.52)
2003-02-21 07:36:26 +00:00
mostang.com!davidm
cb4fb05032
(rotate_gr): Only print debug info if size-of-rotating-partition is non-zero.
...
(rotate_fr): Only print debug info if rotation-base is non-zero.
(Logical change 1.52)
2003-02-21 07:36:26 +00:00
mostang.com!davidm
749cd25529
(rbs_underflow): Remove.
...
(rbs_contains): New function.
(Logical change 1.52)
2003-02-21 07:36:26 +00:00
mostang.com!davidm
0d0c84f63c
(rbs_switch): Rename from rbs_record_switch() and greatly simplify it because
...
we now switch to the new backing-store immediately.
(rbs_underflow): Remove.
(rbs_find_stacked): No longer assume that c->bsp is contained in the current
rbs. If it is not, first find the backing-store that's backing c->bsp.
(rbs_cover_and_flush): Use rbs_contains() instead of (broken) open code.
Handle the case where the initial bsp points to an RNaT slot.
(Logical change 1.52)
2003-02-21 07:36:26 +00:00
mostang.com!davidm
8a621f78ff
(common_init): Drop initialization of c->rbs_right_edge.
...
Initialize size of first rbs_area[] to 1<<63 so that we can maintain
a notion of "above" and "below".
(Logical change 1.52)
2003-02-21 07:36:26 +00:00
mostang.com!davidm
77821808ab
(check_rbs_switch): Mark it as "inline". Make rbs_record_switch() the last call.
...
(update_frame_state): Remove conditional call to rbs_underflow().
(Logical change 1.52)
2003-02-21 07:36:26 +00:00
mostang.com!davidm
4d5c375d34
Fix an off-by-one bug in ia64-test-rbs-asm.S.
...
BKrev: 3e5518c3r3fTJWpLxBVdJoya8Mkm2g
2003-02-20 18:04:51 +00:00
mostang.com!davidm
0d89914d4e
(rbs_spill_N): Fix off-by-one bug in indexing into next_func[].
...
(Logical change 1.51)
2003-02-20 18:04:51 +00:00
mostang.com!davidm
6af90d0df4
Regenerate.
...
(Logical change 1.50)
2003-02-15 08:53:55 +00:00
mostang.com!davidm
80866c48fd
Regenerate built files.
...
BKrev: 3e4e0023Hp_Z9ojofV3zSlDNXv7gvg
2003-02-15 08:53:55 +00:00
mostang.com!davidm
edf42f2db5
Up version number to 0.3.
...
(Logical change 1.49)
2003-02-15 08:49:55 +00:00
mostang.com!davidm
ff7880fde8
Merge bk://unwind@bkbits.net/libunwind
...
into panda.mostang.com:/data/home/davidm/src/unwind/libunwind
2003/02/15 00:49:49-08:00 mostang.com!davidm
Fix unw_resume() some more. Getting there, slowly. tests/ia64-test-rbs doesn't
pass fully yet, but it's getting quite far already.
BKrev: 3e4dff33_NzEt_iH9gpn6Sexm7Fngg
2003-02-15 08:49:55 +00:00
mostang.com!davidm
fb1997ff0a
Add include of "ia64-test-rbs.h".
...
(NELEMS): New macro.
(RECURSION_DEPTH): Fix definition: loadup() allocates 93 local regs, not 95.
(spill_func_t): Make it return an "int".
(DCL): Adjust accordingly.
(verbose): New variable.
(nerrors): Make it an "int".
(unwind_count): Ditto.
(unwind_and_resume): Make it return an int. Print info-output only if verbose is
set. After unwinding to the desired point, redirect IP to
resumption_point_label and store return value in EH_ARG0 and original
IP in EH_ARG1.
(run_check): New function.
(main): Remove open test code and call run_check() instead.
(Logical change 1.49)
2003-02-15 08:49:55 +00:00
mostang.com!davidm
d8023cf208
(unw_set_caching_policy): Call ia64_init() first if necessary.
...
(Logical change 1.49)
2003-02-15 08:49:55 +00:00
mostang.com!davidm
71ab0b2a3c
(rbs_spill_NN): If r8 is non-negative on return from subroutine-call, increment it
...
by one. Take care of restoring the dirty partition before switching back
to original backing store.
(LD_LOC): Load only 4 bytes, not 8 bytes.
(CK_LOC): New macro.
(loadup): ar.pfs is saved in r36, not r34. After returning from subroutine call,
check local variables to make sure they still contain the correct values.
(resumption_point): New function.
(Logical change 1.49)
2003-02-15 08:49:55 +00:00
mostang.com!davidm
d55a7f7dd4
(rbs_cover_and_flush): Also update c->rnat_loc as needed.
...
(Logical change 1.49)
2003-02-15 08:49:55 +00:00
mostang.com!davidm
b8c178177a
(ia64_local_resume): Remove unused variable "loadrs".
...
(Logical change 1.49)
2003-02-15 08:49:55 +00:00
mostang.com!davidm
44a825a3d5
(TEST_arch): Put ia64-test-stack first.
...
(TESTS): Put $(TESTS_arch) first.
(Logical change 1.49)
2003-02-15 08:49:55 +00:00
hp.com!davidm
eb44c3a6d5
Move include of ia64intrin.h after include of "unwind_i.h".
...
(Logical change 1.48)
2003-02-15 03:10:30 +00:00
hp.com!davidm
0cf429d971
More cross-compile bugfixes.
...
BKrev: 3e4dafa6l-AS3Rzo_-mJZQTszUp8rQ
2003-02-15 03:10:30 +00:00
hp.com!davidm
ad066d35b7
Do nothing of UNW_REMOTE_ONLY is defined.
...
(Logical change 1.48)
2003-02-15 03:10:30 +00:00
hp.com!davidm
cd6b1537ce
(unwi_get_proc_name): If UNW_REMOTE_ONLY is defined and the procedure
...
isn't a dynamically generated one, just punt and return
-UNW_ENOINFO.
(Logical change 1.48)
2003-02-15 03:10:30 +00:00
hp.com!davidm
89344cf672
(local_find_proc_info): Define only if not UNW_REMOTE_ONLY.
...
(Logical change 1.48)
2003-02-15 03:10:30 +00:00
hp.com!davidm
a45c88823a
(likely): Make them work even for non-GCC (or old GCC) compilers.
...
(unlikely): Ditto.
(debug): Print to stderr.
(dprintf): Ditto.
(Logical change 1.48)
2003-02-15 03:10:30 +00:00
hp.com!davidm
7fd45d122c
(create_state_record_for): Use dprintf(), not printf().
...
(Logical change 1.48)
2003-02-15 03:10:30 +00:00
mostang.com!davidm
70ee73612e
Minor reformatting to make it fit in 80 cols.
...
(get_rnat): New function.
(rbs_cover_and_flush): Ditto.
(Logical change 1.47)
2003-02-14 06:25:36 +00:00
mostang.com!davidm
b05848b2aa
Merge bk://unwind@bkbits.net/libunwind
...
into panda.mostang.com:/data/home/davidm/src/unwind/libunwind
2003/02/13 22:22:00-08:00 mostang.com!davidm
Make unw_resume() work on ia64 even when the register backing store of the frame
being resumed is scattered across multiple backing store areas.
BKrev: 3e4c8be0eOFftTsWIstwNwHfb0wKdQ
2003-02-14 06:25:36 +00:00
mostang.com!davidm
894b96b95a
(Logical change 1.47)
2003-02-14 06:25:36 +00:00
mostang.com!davidm
9b16424457
Initial revision
2003-02-14 06:25:36 +00:00
mostang.com!davidm
5cef5934e8
Auto merged
...
2003/02/13 22:21:59-08:00 mostang.com!davidm
(libunwind_la_SOURCES_ia64): Mention elf64.h.
(Logical change 1.47)
2003-02-14 06:25:36 +00:00
mostang.com!davidm
32a1dc6be5
(rbs_cover_and_flush): Declare.
...
(_Uia64_install_context): Drop loadrs argument from declaration.
(Logical change 1.47)
2003-02-14 06:25:36 +00:00
mostang.com!davidm
02c8c0cdae
(ia64_local_resume): Use rbs_cover_and_flush() to linearize the contents of the
...
current register frame before resuming execution. Drop loadrs argument
from call to _Uia64_install_context().
(Logical change 1.47)
2003-02-14 06:25:36 +00:00
mostang.com!davidm
03f6e9b004
(_Uia64_install_context): Drop "loadrs" argument and adjust code accordingly.
...
(Logical change 1.47)
2003-02-14 06:25:36 +00:00
mostang.com!davidm
508348e693
(TESTS_arch): Mention ia64-test-rbs.
...
(ia64_test_rbs_SOURCES): New macro.
(Logical change 1.47)
2003-02-14 06:25:36 +00:00
hp.com!davidm
4dca76319d
[REMOTE_ONLY]: Mention dummy "install-exec-hook".
...
(libunwind_la_SOURCES_cdep): Mention dyn-cancel.c and dyn-register.c.
(libunwind_la_SOURCES_common): Remove dyn-cancel.c and dyn-register.c
(Logical change 1.46)
2003-02-14 03:09:27 +00:00
hp.com!davidm
74f568c602
Regenerate.
...
(Logical change 1.46)
2003-02-14 03:09:27 +00:00
hp.com!davidm
49f992ac07
Mention !UNW_REMOTE_ONLY on #else branch.
...
(Logical change 1.46)
2003-02-14 03:09:27 +00:00
hp.com!davidm
0aa53387e3
Fix cross-building (UNW_REMOTE_ONLY).
...
BKrev: 3e4c5de7AVRE9jFQVcwdQSDsiTq5rw
2003-02-14 03:09:27 +00:00
hp.com!davidm
7372c6cc43
(unw_flush_cache): Only uses __sync_fetch_and_add() if
...
HAVE_IA64INTRIN_H is defined. Otherwise, do non-atomic
increment (and issue compile-time warning about it).
(Logical change 1.46)
2003-02-14 03:09:27 +00:00
hp.com!davidm
3980b80e26
(is_local_addr_space): Always return 0 for UNW_REMOTE_ONLY.
...
(_Uia64_search_unwind_table): Add a cast to avoid compiler-warning
when cross-compiling from a 32-bit platform.
(Logical change 1.46)
2003-02-14 03:09:27 +00:00
hp.com!davidm
d7c5192ef8
(ia64_init): Don't call _Uia64_local_addr_space_init() or
...
_ULia64_local_addr_space_init() for UNW_REMOTE_ONLY.
(Logical change 1.46)
2003-02-14 03:09:27 +00:00
hp.com!davidm
ec91b0fce5
(get_unwind_info): Remove unused arguments "pi" and "need_unwind_info".
...
(__UPT_find_proc_info): Adjust get_unwind_info() call accordingly.
(Logical change 1.46)
2003-02-14 03:09:27 +00:00
hp.com!davidm
bbe86eee68
(AC_CHECK_HEADERS): Mention ia64intrin.h.
...
(CCASFLAGS): Define this instead of ASFLAGS.
(Logical change 1.46)
2003-02-14 03:09:27 +00:00
mostang.com!davidm
bbffb334fd
include <string.h>.
...
(Logical change 1.45)
2003-02-08 10:10:59 +00:00
mostang.com!davidm
2da7f4a5a5
[UNW_TARGET_IA64]: Include elf64.h and os-linux.h.
...
(_UPT_get_dyn_info_list_addr): Use elf_map_image() to map the elf-image.
(Logical change 1.45)
2003-02-08 10:10:59 +00:00
mostang.com!davidm
19a4e775ac
Up version number to 0.2-pre5.
...
(OS_LINUX): New conditional.
(CFLAGS): Turn on -Wsign-compare for gcc.
(Logical change 1.45)
2003-02-08 10:10:59 +00:00