1 #!/bin/sh 2 3 # gc_orphan_section_test.sh -- test --gc-sections 4 5 # Copyright (C) 2010-2014 Free Software Foundation, Inc. 6 # Written by Sriraman Tallam <tmsriram (at] google.com>. 7 8 # This file is part of gold. 9 10 # This program is free software; you can redistribute it and/or modify 11 # it under the terms of the GNU General Public License as published by 12 # the Free Software Foundation; either version 3 of the License, or 13 # (at your option) any later version. 14 15 # This program is distributed in the hope that it will be useful, 16 # but WITHOUT ANY WARRANTY; without even the implied warranty of 17 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 # GNU General Public License for more details. 19 20 # You should have received a copy of the GNU General Public License 21 # along with this program; if not, write to the Free Software 22 # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, 23 # MA 02110-1301, USA. 24 25 # The goal of this program is to verify if gc-sections works as expected 26 # with orphan sections. 27 # File gc_orphan_sections_test.cc is in this test. This program checks if 28 # the orphan sections are retained when they are referenced through 29 # __start_XXX and __stop_XXX symbols. 30 31 check() 32 { 33 if grep -q " boo" "$1" 34 then 35 echo "Garbage collection failed to collect boo" 36 exit 1 37 fi 38 grep_foo=`grep -q " foo" $1` 39 if [ $? != 0 ]; 40 then 41 echo "Garbage collection should not discard foo" 42 exit 1 43 fi 44 } 45 46 check gc_orphan_section_test.stdout 47