1 #! /bin/sh 2 # Copyright (C) 2005 Red Hat, Inc. 3 # This file is part of Red Hat elfutils. 4 # 5 # Red Hat elfutils is free software; you can redistribute it and/or modify 6 # it under the terms of the GNU General Public License as published by the 7 # Free Software Foundation; version 2 of the License. 8 # 9 # Red Hat elfutils is distributed in the hope that it will be useful, but 10 # WITHOUT ANY WARRANTY; without even the implied warranty of 11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 # General Public License for more details. 13 # 14 # You should have received a copy of the GNU General Public License along 15 # with Red Hat elfutils; if not, write to the Free Software Foundation, 16 # Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA. 17 # 18 # Red Hat elfutils is an included package of the Open Invention Network. 19 # An included package of the Open Invention Network is a package for which 20 # Open Invention Network licensees cross-license their patents. No patent 21 # license is granted, either expressly or impliedly, by designation as an 22 # included package. Should you wish to participate in the Open Invention 23 # Network licensing program, please visit www.openinventionnetwork.com 24 # <http://www.openinventionnetwork.com>. 25 26 . $srcdir/test-subr.sh 27 28 testfiles testfile testfile11 testfile22 testfile24 \ 29 testfile25 testfile3 testfile4 testfile5 testfile6 30 31 testrun_compare ./find-prologues -e testfile <<\EOF 32 main 0x000000000804842c 0x0000000008048432 33 bar 0x000000000804845c 0x000000000804845f 34 foo 0x0000000008048468 0x000000000804846b 35 EOF 36 37 testrun_compare ./find-prologues -e testfile11 <<\EOF 38 main 0x00000000080489b8 0x00000000080489cd 39 gnu_obj_2 0x0000000008048c9e 0x0000000008048ca4 40 gnu_obj_3 0x0000000008048cd8 0x0000000008048cde 41 gnu_obj_2 0x0000000008048cf4 0x0000000008048cfa 42 ~invalid_argument 0x0000000008048d2e 0x0000000008048d34 43 gnu_obj_1 0x0000000008048d62 0x0000000008048d65 44 gnu_obj_1 0x0000000008048d8a 0x0000000008048d8d 45 ~invalid_argument 0x0000000008048db2 0x0000000008048db8 46 EOF 47 48 testrun_compare ./find-prologues -e testfile22 <<\EOF 49 function 0x0000000008048348 0x000000000804834e 50 main 0x000000000804835b 0x0000000008048377 51 EOF 52 53 testrun_compare ./find-prologues -e testfile24 <<\EOF 54 incr 0x0000000008048348 0x000000000804834e 55 main 0x0000000008048354 0x0000000008048360 56 EOF 57 58 testrun_compare ./find-prologues -e testfile25 <<\EOF 59 incr 0x0000000008048348 0x000000000804834c 60 EOF 61 62 testrun_compare ./find-prologues -e testfile3 <<\EOF 63 main 0x000000000804842c 0x0000000008048433 64 bar 0x0000000008048458 0x000000000804845b 65 foo 0x0000000008048464 0x0000000008048467 66 EOF 67 68 testrun_compare ./find-prologues -e testfile4 <<\EOF 69 get 0x00000000080493fc 0x0000000008049402 70 main 0x0000000008049498 0x000000000804949e 71 a 0x000000000804d85c 0x000000000804d85c 72 __tfPCc 0x000000000804d86c 0x000000000804d872 73 __tfCc 0x000000000804d8a4 0x000000000804d8a4 74 EOF 75 76 testrun_compare ./find-prologues -e testfile5 <<\EOF 77 bar 0x000000000804842c 0x000000000804842f 78 foo 0x0000000008048438 0x000000000804843b 79 main 0x0000000008048444 0x000000000804844a 80 EOF 81 82 testrun_compare ./find-prologues -e testfile6 <<\EOF 83 main 0x00000000080489b8 0x00000000080489cd 84 gnu_obj_2 0x0000000008048c9e 0x0000000008048ca4 85 gnu_obj_3 0x0000000008048cd8 0x0000000008048cde 86 gnu_obj_2 0x0000000008048cf4 0x0000000008048cfa 87 ~invalid_argument 0x0000000008048d2e 0x0000000008048d34 88 gnu_obj_1 0x0000000008048d62 0x0000000008048d65 89 gnu_obj_1 0x0000000008048d8a 0x0000000008048d8d 90 ~invalid_argument 0x0000000008048db2 0x0000000008048db8 91 EOF 92 93 exit 0 94