13640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm#!/bin/sh 23640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidmverbose=false 33640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidmif [ "$1" = "-v" ]; then 43640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm verbose=true 53640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm shift 63640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidmfi 73640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 83640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidmbuild_plat=@build_arch@ 93640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidmplat=@arch@ 103640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidmos=@target_os@ 113640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidmnum_errors=0 123640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 133640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidmLIBUNWIND=../src/.libs/libunwind.so 143640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidmLIBUNWIND_GENERIC=../src/.libs/libunwind-${plat}.so 153640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 166f282a00f55d0bc11f131da5d3591a1a4030a9f9Bruna Moreirafetch_symtab () { 173640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm filename=$1 183640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 193640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm if [ ! -r $filename ]; then 203640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm return 213640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm fi 223640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 233640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm if $verbose; then 243640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm echo "Checking $filename..." 253640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm fi 263640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 273640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm # 283640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm # Unfortunately, "nm --defined" is a GNU-extension. For portability, 293640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm # build the list of defined symbols by hand. 303640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm # 313640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm symtab=`nm -g $filename` 323640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm saved_IFS="$IFS" 333640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm IFS="" 343640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm undef=`nm -g -u $filename` 353640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm for line in $undef; do 363640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm symtab=`echo "$symtab" | grep -v "^${line}"\$` 373640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm done; 383640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm IFS="$saved_IFS" 393640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm} 403640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 416f282a00f55d0bc11f131da5d3591a1a4030a9f9Bruna Moreiraignore () { 423640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm sym=$1 433640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm symtab=`echo "$symtab" | grep -v " ${sym}\$"` 443640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm} 453640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 466f282a00f55d0bc11f131da5d3591a1a4030a9f9Bruna Moreiramatch () { 473640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm sym=$1 483640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm if `echo "$symtab" | grep -q " ${sym}\$"`; then 493640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm symtab=`echo "$symtab" | grep -v " ${sym}\$"` 503640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm else 513640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm echo " ERROR: Symbol \"$sym\" missing." 523640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm num_errors=`expr $num_errors + 1` 533640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm fi 543640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm} 553640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 563640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm# 573640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm# Filter out miscellaneous symbols that get defined by the 583640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm# linker for each shared object. 593640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm# 606f282a00f55d0bc11f131da5d3591a1a4030a9f9Bruna Moreirafilter_misc () { 613640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm ignore _DYNAMIC 623640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm ignore _GLOBAL_OFFSET_TABLE_ 633640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm ignore __bss_start 643640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm ignore _edata 653640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm ignore _end 663640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm ignore _Uelf32_get_proc_name 673640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm ignore _Uelf32_valid_object 683640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm ignore _Uelf64_get_proc_name 693640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm ignore _Uelf64_valid_object 703640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm ignore _U.*debug_level 713640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm ignore ICRT.INTERNAL # ICC 8.x defines this 729a311bf48b08dcf18c09f289c3b7bf2382282e61Ken Werner 739a311bf48b08dcf18c09f289c3b7bf2382282e61Ken Werner # Ignore symbols generated by the ARM Linux default linker script. 749a311bf48b08dcf18c09f289c3b7bf2382282e61Ken Werner # For details see the binutils sources (src/ld/emulparams/armelf_linux.sh). 759a311bf48b08dcf18c09f289c3b7bf2382282e61Ken Werner if [ ${plat} = "arm" ]; then 769a311bf48b08dcf18c09f289c3b7bf2382282e61Ken Werner ignore __bss_start__ 779a311bf48b08dcf18c09f289c3b7bf2382282e61Ken Werner ignore __bss_end__ 789a311bf48b08dcf18c09f289c3b7bf2382282e61Ken Werner ignore __end__ 799a311bf48b08dcf18c09f289c3b7bf2382282e61Ken Werner ignore _bss_end__ 809a311bf48b08dcf18c09f289c3b7bf2382282e61Ken Werner fi 816f374ccb5a3da0af7c6f39ef9ea06eacfe8542c6Tommi Rantala 826f374ccb5a3da0af7c6f39ef9ea06eacfe8542c6Tommi Rantala if [ ${plat} = "mips" ]; then 836f374ccb5a3da0af7c6f39ef9ea06eacfe8542c6Tommi Rantala ignore _fbss 846f374ccb5a3da0af7c6f39ef9ea06eacfe8542c6Tommi Rantala ignore _fdata 856f374ccb5a3da0af7c6f39ef9ea06eacfe8542c6Tommi Rantala ignore _ftext 866f374ccb5a3da0af7c6f39ef9ea06eacfe8542c6Tommi Rantala ignore _gp 876f374ccb5a3da0af7c6f39ef9ea06eacfe8542c6Tommi Rantala fi 883640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm} 893640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 906f282a00f55d0bc11f131da5d3591a1a4030a9f9Bruna Moreiracheck_local_unw_abi () { 913640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _UL${plat}_create_addr_space 923640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _UL${plat}_destroy_addr_space 933640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _UL${plat}_get_fpreg 943640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _UL${plat}_get_proc_info 953640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _UL${plat}_get_proc_info_by_ip 963640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _UL${plat}_get_proc_name 973640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _UL${plat}_get_reg 983640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _UL${plat}_get_save_loc 993640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _UL${plat}_init_local 1003640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _UL${plat}_init_remote 1013640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _UL${plat}_is_signal_frame 1028e53e62db913470952b8eb541834b876f7a6882cArun Sharma match _UL${plat}_handle_signal_frame 1033640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _UL${plat}_local_addr_space 1043640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _UL${plat}_resume 1053640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _UL${plat}_set_caching_policy 1063640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _UL${plat}_set_reg 1073640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _UL${plat}_set_fpreg 1083640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _UL${plat}_step 1093640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 1103640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_flush_cache 1113640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_get_accessors 1123640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_getcontext 1133640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_regname 114511d5428287c0be5796f4c3a65c570ae0cb7e7f0bea.com!thallgre match _U${plat}_strerror 1153640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 1163640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U_dyn_cancel 1173640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U_dyn_info_list_addr 1183640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U_dyn_register 1193640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 12050bc12afba900c478d5d760966ef5b6f32229c99Lassi Tuura match unw_backtrace 1213640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match backtrace 1223640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 1233640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm case ${plat} in 1249a311bf48b08dcf18c09f289c3b7bf2382282e61Ken Werner arm) 1259a311bf48b08dcf18c09f289c3b7bf2382282e61Ken Werner match _U${plat}_get_elf_image 1269a311bf48b08dcf18c09f289c3b7bf2382282e61Ken Werner match _U${plat}_is_fpreg 1279a311bf48b08dcf18c09f289c3b7bf2382282e61Ken Werner match _UL${plat}_search_unwind_table 1289a311bf48b08dcf18c09f289c3b7bf2382282e61Ken Werner match _UL${plat}_dwarf_search_unwind_table 1297e5d2791f9218e5d00c1ce52c6ebe8474bf476c3Arun Sharma match _UL${plat}_dwarf_find_unwind_table 1309a311bf48b08dcf18c09f289c3b7bf2382282e61Ken Werner ;; 131b09eae12032b0f47c14f63a1e35f6d48d3a41a9chp.com!davidm hppa) 132b09eae12032b0f47c14f63a1e35f6d48d3a41a9chp.com!davidm match _UL${plat}_dwarf_search_unwind_table 1337e5d2791f9218e5d00c1ce52c6ebe8474bf476c3Arun Sharma match _UL${plat}_dwarf_find_unwind_table 134b09eae12032b0f47c14f63a1e35f6d48d3a41a9chp.com!davidm match _U${plat}_get_elf_image 135b09eae12032b0f47c14f63a1e35f6d48d3a41a9chp.com!davidm match _U${plat}_setcontext 136b09eae12032b0f47c14f63a1e35f6d48d3a41a9chp.com!davidm ;; 1373640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm ia64) 1383640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _UL${plat}_search_unwind_table 1393640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_get_elf_image 1403640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm ;; 141d7f8bd62d4dc0bfd3b43df9248e60d0549f98e7bhp.com!davidm x86) 142d7f8bd62d4dc0bfd3b43df9248e60d0549f98e7bhp.com!davidm match _U${plat}_get_elf_image 143d7f8bd62d4dc0bfd3b43df9248e60d0549f98e7bhp.com!davidm match _U${plat}_is_fpreg 144d7f8bd62d4dc0bfd3b43df9248e60d0549f98e7bhp.com!davidm match _UL${plat}_dwarf_search_unwind_table 1457e5d2791f9218e5d00c1ce52c6ebe8474bf476c3Arun Sharma match _UL${plat}_dwarf_find_unwind_table 146d7f8bd62d4dc0bfd3b43df9248e60d0549f98e7bhp.com!davidm ;; 147b09eae12032b0f47c14f63a1e35f6d48d3a41a9chp.com!davidm x86_64) 148b09eae12032b0f47c14f63a1e35f6d48d3a41a9chp.com!davidm match _U${plat}_get_elf_image 149b09eae12032b0f47c14f63a1e35f6d48d3a41a9chp.com!davidm match _U${plat}_is_fpreg 150b09eae12032b0f47c14f63a1e35f6d48d3a41a9chp.com!davidm match _UL${plat}_dwarf_search_unwind_table 1517e5d2791f9218e5d00c1ce52c6ebe8474bf476c3Arun Sharma match _UL${plat}_dwarf_find_unwind_table 152ef29eade44fc2aa7e49811a8bd76e941b369b914Arun Sharma match _U${plat}_setcontext 153b09eae12032b0f47c14f63a1e35f6d48d3a41a9chp.com!davidm ;; 154a63c209fed74b161b36b80340aa0f1b9f5114e16Tommi Rantala ppc*) 155a63c209fed74b161b36b80340aa0f1b9f5114e16Tommi Rantala match _U${plat}_get_func_addr 156a63c209fed74b161b36b80340aa0f1b9f5114e16Tommi Rantala match _U${plat}_get_elf_image 157a63c209fed74b161b36b80340aa0f1b9f5114e16Tommi Rantala match _U${plat}_is_fpreg 158a63c209fed74b161b36b80340aa0f1b9f5114e16Tommi Rantala match _UL${plat}_dwarf_search_unwind_table 159a63c209fed74b161b36b80340aa0f1b9f5114e16Tommi Rantala match _UL${plat}_dwarf_find_unwind_table 160a63c209fed74b161b36b80340aa0f1b9f5114e16Tommi Rantala ;; 1613640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm *) 162d7f8bd62d4dc0bfd3b43df9248e60d0549f98e7bhp.com!davidm match _U${plat}_is_fpreg 1633640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _UL${plat}_dwarf_search_unwind_table 1647e5d2791f9218e5d00c1ce52c6ebe8474bf476c3Arun Sharma match _UL${plat}_dwarf_find_unwind_table 1653640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm ;; 1663640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm esac 167546463d1e78d52197ff2c204f793c343abb97dc5Arun Sharma 168546463d1e78d52197ff2c204f793c343abb97dc5Arun Sharma if [ x@enable_debug_frame@ = xyes ]; then 169546463d1e78d52197ff2c204f793c343abb97dc5Arun Sharma match _UL${plat}_dwarf_find_debug_frame 170546463d1e78d52197ff2c204f793c343abb97dc5Arun Sharma fi 171546463d1e78d52197ff2c204f793c343abb97dc5Arun Sharma 1723640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm} 1733640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 1746f282a00f55d0bc11f131da5d3591a1a4030a9f9Bruna Moreiracheck_generic_unw_abi () { 1753640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_create_addr_space 1763640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_destroy_addr_space 1773640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_flush_cache 1783640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_get_accessors 1793640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_get_fpreg 1803640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_get_proc_info 1813640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_get_proc_info_by_ip 1823640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_get_proc_name 1833640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_get_reg 1843640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_get_save_loc 1853640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_init_local 1863640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_init_remote 1873640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_is_signal_frame 1888e53e62db913470952b8eb541834b876f7a6882cArun Sharma match _U${plat}_handle_signal_frame 1893640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_local_addr_space 1903640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_regname 1913640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_resume 1923640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_set_caching_policy 1933640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_set_fpreg 1943640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_set_reg 1953640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_step 196511d5428287c0be5796f4c3a65c570ae0cb7e7f0bea.com!thallgre match _U${plat}_strerror 1973640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 1983640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm case ${plat} in 1999a311bf48b08dcf18c09f289c3b7bf2382282e61Ken Werner arm) 2009a311bf48b08dcf18c09f289c3b7bf2382282e61Ken Werner match _U${plat}_is_fpreg 2019a311bf48b08dcf18c09f289c3b7bf2382282e61Ken Werner match _U${plat}_get_elf_image 2029a311bf48b08dcf18c09f289c3b7bf2382282e61Ken Werner match _U${plat}_search_unwind_table 2039a311bf48b08dcf18c09f289c3b7bf2382282e61Ken Werner match _U${plat}_dwarf_search_unwind_table 2047e5d2791f9218e5d00c1ce52c6ebe8474bf476c3Arun Sharma match _U${plat}_dwarf_find_unwind_table 2059a311bf48b08dcf18c09f289c3b7bf2382282e61Ken Werner ;; 206b09eae12032b0f47c14f63a1e35f6d48d3a41a9chp.com!davidm hppa) 207b09eae12032b0f47c14f63a1e35f6d48d3a41a9chp.com!davidm match _U${plat}_dwarf_search_unwind_table 2087e5d2791f9218e5d00c1ce52c6ebe8474bf476c3Arun Sharma match _U${plat}_dwarf_find_unwind_table 209b09eae12032b0f47c14f63a1e35f6d48d3a41a9chp.com!davidm match _U${plat}_get_elf_image 210b09eae12032b0f47c14f63a1e35f6d48d3a41a9chp.com!davidm ;; 2113640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm ia64) 2123640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_search_unwind_table 2133640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_find_dyn_list 21472a03113c88e9bd365d3283ffd97f6972c9edcabhp.com!davidm if [ $plat = $build_plat ]; then 21572a03113c88e9bd365d3283ffd97f6972c9edcabhp.com!davidm match _U${plat}_get_elf_image 21672a03113c88e9bd365d3283ffd97f6972c9edcabhp.com!davidm case $os in 21772a03113c88e9bd365d3283ffd97f6972c9edcabhp.com!davidm linux*) 21872a03113c88e9bd365d3283ffd97f6972c9edcabhp.com!davidm match _U${plat}_get_kernel_table 21972a03113c88e9bd365d3283ffd97f6972c9edcabhp.com!davidm ;; 22072a03113c88e9bd365d3283ffd97f6972c9edcabhp.com!davidm esac 22172a03113c88e9bd365d3283ffd97f6972c9edcabhp.com!davidm fi 2223640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm ;; 223d7f8bd62d4dc0bfd3b43df9248e60d0549f98e7bhp.com!davidm x86) 224d7f8bd62d4dc0bfd3b43df9248e60d0549f98e7bhp.com!davidm match _U${plat}_get_elf_image 225d7f8bd62d4dc0bfd3b43df9248e60d0549f98e7bhp.com!davidm match _U${plat}_is_fpreg 226d7f8bd62d4dc0bfd3b43df9248e60d0549f98e7bhp.com!davidm match _U${plat}_dwarf_search_unwind_table 2277e5d2791f9218e5d00c1ce52c6ebe8474bf476c3Arun Sharma match _U${plat}_dwarf_find_unwind_table 228b09eae12032b0f47c14f63a1e35f6d48d3a41a9chp.com!davidm ;; 229b09eae12032b0f47c14f63a1e35f6d48d3a41a9chp.com!davidm x86_64) 230b09eae12032b0f47c14f63a1e35f6d48d3a41a9chp.com!davidm match _U${plat}_get_elf_image 231b09eae12032b0f47c14f63a1e35f6d48d3a41a9chp.com!davidm match _U${plat}_is_fpreg 232b09eae12032b0f47c14f63a1e35f6d48d3a41a9chp.com!davidm match _U${plat}_dwarf_search_unwind_table 2337e5d2791f9218e5d00c1ce52c6ebe8474bf476c3Arun Sharma match _U${plat}_dwarf_find_unwind_table 234d7f8bd62d4dc0bfd3b43df9248e60d0549f98e7bhp.com!davidm ;; 235a63c209fed74b161b36b80340aa0f1b9f5114e16Tommi Rantala ppc*) 236a63c209fed74b161b36b80340aa0f1b9f5114e16Tommi Rantala match _U${plat}_get_elf_image 237a63c209fed74b161b36b80340aa0f1b9f5114e16Tommi Rantala match _U${plat}_get_func_addr 238a63c209fed74b161b36b80340aa0f1b9f5114e16Tommi Rantala match _U${plat}_is_fpreg 239a63c209fed74b161b36b80340aa0f1b9f5114e16Tommi Rantala match _U${plat}_dwarf_search_unwind_table 240a63c209fed74b161b36b80340aa0f1b9f5114e16Tommi Rantala match _U${plat}_dwarf_find_unwind_table 241a63c209fed74b161b36b80340aa0f1b9f5114e16Tommi Rantala ;; 2423640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm *) 2433640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_is_fpreg 2443640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _U${plat}_dwarf_search_unwind_table 2457e5d2791f9218e5d00c1ce52c6ebe8474bf476c3Arun Sharma match _U${plat}_dwarf_find_unwind_table 2463640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm ;; 2473640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm esac 248546463d1e78d52197ff2c204f793c343abb97dc5Arun Sharma 249546463d1e78d52197ff2c204f793c343abb97dc5Arun Sharma if [ x@enable_debug_frame@ = xyes ]; then 250546463d1e78d52197ff2c204f793c343abb97dc5Arun Sharma match _U${plat}_dwarf_find_debug_frame 251546463d1e78d52197ff2c204f793c343abb97dc5Arun Sharma fi 2523640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm} 2533640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 2546f282a00f55d0bc11f131da5d3591a1a4030a9f9Bruna Moreiracheck_cxx_abi () { 2553640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _Unwind_Backtrace 2563640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _Unwind_DeleteException 2573640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _Unwind_FindEnclosingFunction 2583640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _Unwind_ForcedUnwind 2593640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _Unwind_GetBSP 2603640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _Unwind_GetCFA 2613640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _Unwind_GetDataRelBase 2623640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _Unwind_GetGR 2633640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _Unwind_GetIP 2642fce54102cdb03aa2d3105c750685dc7cf2677b1Arun Sharma match _Unwind_GetIPInfo 2653640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _Unwind_GetLanguageSpecificData 2663640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _Unwind_GetRegionStart 2673640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _Unwind_GetTextRelBase 2683640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _Unwind_RaiseException 2693640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _Unwind_Resume 2703640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _Unwind_Resume_or_Rethrow 2713640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _Unwind_SetGR 2723640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _Unwind_SetIP 273efa755a556f760e8a208bfd7a26c1e4063a64bd2homeip.net!davidm match __libunwind_Unwind_Backtrace 274efa755a556f760e8a208bfd7a26c1e4063a64bd2homeip.net!davidm match __libunwind_Unwind_DeleteException 275efa755a556f760e8a208bfd7a26c1e4063a64bd2homeip.net!davidm match __libunwind_Unwind_FindEnclosingFunction 276efa755a556f760e8a208bfd7a26c1e4063a64bd2homeip.net!davidm match __libunwind_Unwind_ForcedUnwind 277efa755a556f760e8a208bfd7a26c1e4063a64bd2homeip.net!davidm match __libunwind_Unwind_GetBSP 278efa755a556f760e8a208bfd7a26c1e4063a64bd2homeip.net!davidm match __libunwind_Unwind_GetCFA 279efa755a556f760e8a208bfd7a26c1e4063a64bd2homeip.net!davidm match __libunwind_Unwind_GetDataRelBase 280efa755a556f760e8a208bfd7a26c1e4063a64bd2homeip.net!davidm match __libunwind_Unwind_GetGR 281efa755a556f760e8a208bfd7a26c1e4063a64bd2homeip.net!davidm match __libunwind_Unwind_GetIP 2822fce54102cdb03aa2d3105c750685dc7cf2677b1Arun Sharma match __libunwind_Unwind_GetIPInfo 283efa755a556f760e8a208bfd7a26c1e4063a64bd2homeip.net!davidm match __libunwind_Unwind_GetLanguageSpecificData 284efa755a556f760e8a208bfd7a26c1e4063a64bd2homeip.net!davidm match __libunwind_Unwind_GetRegionStart 285efa755a556f760e8a208bfd7a26c1e4063a64bd2homeip.net!davidm match __libunwind_Unwind_GetTextRelBase 286efa755a556f760e8a208bfd7a26c1e4063a64bd2homeip.net!davidm match __libunwind_Unwind_RaiseException 287efa755a556f760e8a208bfd7a26c1e4063a64bd2homeip.net!davidm match __libunwind_Unwind_Resume 288efa755a556f760e8a208bfd7a26c1e4063a64bd2homeip.net!davidm match __libunwind_Unwind_Resume_or_Rethrow 289efa755a556f760e8a208bfd7a26c1e4063a64bd2homeip.net!davidm match __libunwind_Unwind_SetGR 290efa755a556f760e8a208bfd7a26c1e4063a64bd2homeip.net!davidm match __libunwind_Unwind_SetIP 2913640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm case $os in 2923640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm linux*) 2933640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm # needed only for Intel 8.0 bug-compatibility 2943640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _ReadSLEB 2953640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm match _ReadULEB 2963640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm ;; 2973640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm esac 2983640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm} 2993640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 3006f282a00f55d0bc11f131da5d3591a1a4030a9f9Bruna Moreiracheck_empty () { 3013640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm if [ -n "$symtab" ]; then 30256f07a8e550dab4734524e3f03ac98c9fbd52fc6Tommi Rantala printf " ERROR: Extraneous symbols:\n$symtab\n" 3033640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm num_errors=`expr $num_errors + 1` 3043640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm fi 3053640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm} 3063640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 3073640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidmif [ $plat = $build_plat ]; then 3083640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm fetch_symtab $LIBUNWIND 3093640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm filter_misc 3103640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm check_local_unw_abi 3111227c41d20be7e31ce8b5284b27d1d75009cd3ebArun Sharma if [ x@enable_cxx_exceptions@ = xyes ]; then 31283cef8b8f51eb46b23f6e72493d070c95a544919Arun Sharma check_cxx_abi 31383cef8b8f51eb46b23f6e72493d070c95a544919Arun Sharma fi 3143640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm check_empty 3153640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidmfi 3163640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 3173640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidmfetch_symtab $LIBUNWIND_GENERIC 3183640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidmfilter_misc 3193640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidmcheck_generic_unw_abi 3203640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidmcheck_empty 3213640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 3223640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidmif [ $num_errors -gt 0 ]; then 3233640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm echo "FAILURE: Detected $num_errors errors" 3246f282a00f55d0bc11f131da5d3591a1a4030a9f9Bruna Moreira exit 1 3253640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidmfi 3263640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm 3273640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidmif $verbose; then 3283640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidm echo " SUCCESS: all checks passed" 3293640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidmfi 3303640bb40a264ce250153f5463e2ad24b16e94205mostang.com!davidmexit 0 331