joerg
0ed4c83ba9
Lazy VFP processing works a lot better if the functions contain a return
...
instruction.
2014-05-14 22:13:36 +00:00
joerg
2f1b7695c4
Support DWARFish unwind for ARM.
2014-05-11 02:07:35 +00:00
joerg
7e3335542c
Missing register validation check.
2014-05-03 23:19:56 +00:00
joerg
0c55f87954
GC unwind_info_size.
2014-04-28 13:39:23 +00:00
joerg
d013f698cc
Use the return address register from the CIE. Based on patch from Nick
...
Kledzik.
2014-04-26 23:17:38 +00:00
joerg
380ce570fd
Add initial unwind support for MIPS and MIPS64.
2014-04-26 20:15:48 +00:00
joerg
f76ae5ef4f
Basic unwind support for HPPA.
2014-04-19 21:21:24 +00:00
joerg
a997683cbb
Add basic Alpha support to libunwind.
2014-04-15 18:40:34 +00:00
joerg
7209984597
Add initial unwind support for SPARC/SPARC64.
2014-04-15 11:44:26 +00:00
joerg
4b91d83710
Some architectures like SPARC need to apply a fixed offset to the return
...
address. Introduce such a constant.
2014-04-14 18:15:17 +00:00
joerg
44e617ea85
Move definition of what the native register layout is into
...
Registers.hpp.
2014-04-13 19:04:01 +00:00
joerg
8886a873b8
Support SH3 in our unwinder.
2014-04-02 22:34:29 +00:00
joerg
8d85521c7b
SH3 uses unaligned data in the .eh_frame section, so use memcpy.
2014-04-02 22:22:37 +00:00
joerg
dd0e21086c
Save & restore FP registers.
2014-03-25 00:00:55 +00:00
joerg
0378fc4757
Add m68k support to our unwinder.
2014-03-24 21:25:03 +00:00
joerg
1fad0e91e1
Fix DW_CFA_GNU_args_size handling. The primary architecture using this
...
opcode is VAX. A function call pushes the number of arguments given onto
the stack and "ret" will pop it automatically. The FDE of the caller
contains the amount of stack space used for arguments (and possibly
extra padding), so unwinding has to compensate for this when "returning"
from a function. This is exactly the case when step() is done. The
existing handling in _Unwind_SetIP no longer makes sense.
2014-03-20 01:35:45 +00:00
joerg
9a7eb6d5aa
Drop XXX, spell R14 as SP.
2014-03-19 21:15:45 +00:00
joerg
0498752769
Allow building with GCC 4.1 by providing <cstdint>
2014-03-19 16:46:23 +00:00
joerg
c9aa4ad46c
Add basic unwind support for VAX. PSW handling and stack pointer after
...
resume is still incomplete.
2014-03-18 13:08:15 +00:00
joerg
a5e04a5e0f
Kill one colon that shouldn't be.
2014-03-13 01:50:50 +00:00
joerg
0f0483b305
libstdc++ doesn't like me using <cstdint> without requesting C++11, so
...
just do so.
2014-03-13 00:56:41 +00:00
joerg
d952896fa0
Add _Unwind_GetIPInfo for libstdc++.
2014-03-13 00:28:20 +00:00
joerg
a0318c3f0f
Pass down data_base just in case something actually tries to use it.
2014-03-12 22:50:59 +00:00
joerg
a6d7909bce
Add more const to make GCC happy.
2014-03-12 15:31:55 +00:00
joerg
b77db904fb
Add a dummy element as explicit padding for PPC32. Fix DWARF enumeration
...
to match the values created by GCC. Fix DWARFish -> index conversion.
2014-03-12 00:01:12 +00:00
joerg
fb33a5654b
Rename IP_PSEUDO_REG to RETURN_REG. Fix PPC value. Sort.
2014-03-11 23:57:42 +00:00
joerg
1b4a81d6d1
GC unused enum.
2014-03-11 23:55:11 +00:00
joerg
499c31d6cd
0 is a valid LSDA encoding and can be seen in statically linked
...
programs. Initialize lsdaEncoding to DW_EH_PE_omit and check for that
value to decide whether a value should be decoded.
2014-03-11 23:52:17 +00:00
matt
a11fbefc31
Add support for non-EABI (DWARF) ARM exception handling.
2014-01-29 06:59:53 +00:00
joerg
a060b1754e
Fix typo.
2013-12-20 12:46:42 +00:00
joerg
3a53a9e14e
Add a heavily modified version of Apple's libunwind as released under
...
MIT license in libc++abi. At the moment, only x86 support is tested.
2013-10-14 01:14:57 +00:00