1 // two_file_test_1b_v1.cc -- supplementary file for a three-file test case 2 // for gold. 3 4 // Copyright (C) 2008-2014 Free Software Foundation, Inc. 5 // Written by Cary Coutant <ccoutant (at) google.com>. 6 7 // This file is part of gold. 8 9 // This program is free software; you can redistribute it and/or modify 10 // it under the terms of the GNU General Public License as published by 11 // the Free Software Foundation; either version 3 of the License, or 12 // (at your option) any later version. 13 14 // This program is distributed in the hope that it will be useful, 15 // but WITHOUT ANY WARRANTY; without even the implied warranty of 16 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 // GNU General Public License for more details. 18 19 // You should have received a copy of the GNU General Public License 20 // along with this program; if not, write to the Free Software 21 // Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, 22 // MA 02110-1301, USA. 23 24 // This is an alternate version of the source file two_file_test_1b.cc, 25 // used to test incremental linking. We build a binary first using this 26 // source file, then do an incremental link with the primary version of 27 // the file. 28 29 // This file is used as part of a mixed PIC/non-PIC test. 30 // Files 1 and 1b are linked together in a shared library. 31 // File 1 is compiled non-PIC, and file 1a is compiled PIC. 32 // File 2 is compiled PIC and linked in a second shared library. 33 // This tests that a non-PIC call does not accidentally get 34 // bound to a PIC PLT entry. 35 36 // We test the following cases. 37 38 #include "two_file_test.h" 39 40 // 16 Call a function directly after its address has been taken. 41 42 bool 43 t16a() 44 { 45 return f10() == 125; 46 } 47