comparison libunwind/src/UnwindCursor.hpp @ 173:0572611fdcc8 llvm10 llvm12

reorgnization done
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 11:55:54 +0900
parents 1d019706d866
children 2e18cbf3894f
comparison
equal deleted inserted replaced
172:9fbae9c8bf63 173:0572611fdcc8
1121 compact_unwind_encoding_t dwarfEncoding(Registers_or1k &) const { 1121 compact_unwind_encoding_t dwarfEncoding(Registers_or1k &) const {
1122 return 0; 1122 return 0;
1123 } 1123 }
1124 #endif 1124 #endif
1125 1125
1126 #if defined (_LIBUNWIND_TARGET_HEXAGON)
1127 compact_unwind_encoding_t dwarfEncoding(Registers_hexagon &) const {
1128 return 0;
1129 }
1130 #endif
1131
1126 #if defined (_LIBUNWIND_TARGET_MIPS_O32) 1132 #if defined (_LIBUNWIND_TARGET_MIPS_O32)
1127 compact_unwind_encoding_t dwarfEncoding(Registers_mips_o32 &) const { 1133 compact_unwind_encoding_t dwarfEncoding(Registers_mips_o32 &) const {
1128 return 0; 1134 return 0;
1129 } 1135 }
1130 #endif 1136 #endif
1846 // Remove the thumb bit so the IP represents the actual instruction address. 1852 // Remove the thumb bit so the IP represents the actual instruction address.
1847 // This matches the behaviour of _Unwind_GetIP on arm. 1853 // This matches the behaviour of _Unwind_GetIP on arm.
1848 pc &= (pint_t)~0x1; 1854 pc &= (pint_t)~0x1;
1849 #endif 1855 #endif
1850 1856
1857 // Exit early if at the top of the stack.
1858 if (pc == 0) {
1859 _unwindInfoMissing = true;
1860 return;
1861 }
1862
1851 // If the last line of a function is a "throw" the compiler sometimes 1863 // If the last line of a function is a "throw" the compiler sometimes
1852 // emits no instructions after the call to __cxa_throw. This means 1864 // emits no instructions after the call to __cxa_throw. This means
1853 // the return address is actually the start of the next function. 1865 // the return address is actually the start of the next function.
1854 // To disambiguate this, back up the pc when we know it is a return 1866 // To disambiguate this, back up the pc when we know it is a return
1855 // address. 1867 // address.