| # Expect script for TLS tests. |
| # Copyright (C) 2017-2021 Free Software Foundation, Inc. |
| # |
| # This file is part of the GNU Binutils. |
| # |
| # This program is free software; you can redistribute it and/or modify |
| # it under the terms of the GNU General Public License as published by |
| # the Free Software Foundation; either version 3 of the License, or |
| # (at your option) any later version. |
| # |
| # This program is distributed in the hope that it will be useful, |
| # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| # GNU General Public License for more details. |
| # |
| # You should have received a copy of the GNU General Public License |
| # along with this program; if not, write to the Free Software |
| # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, |
| # MA 02110-1301, USA. |
| # |
| |
| # Make sure that binutils can correctly handle TLS. |
| |
| if { !([istarget *-*-linux*] |
| || [istarget arm*-*-uclinuxfdpiceabi] |
| || [istarget *-*-nacl*] |
| || [istarget *-*-gnu*]) || [istarget *ecoff] } then { |
| return |
| } |
| |
| # Check to see if the C compiler works. |
| if { ![check_compiler_available] } { |
| return |
| } |
| |
| # This target requires extra GAS options when building PIC/PIE code. |
| set AFLAGS_PIC "" |
| if [istarget "sparc*-*-*"] { |
| append AFLAGS_PIC " -K PIC -Av9" |
| } |
| |
| run_ld_link_tests [list \ |
| [list \ |
| "Build pr22263-1" \ |
| "-pie -e _start -z text" \ |
| "" \ |
| "$AFLAGS_PIC" \ |
| { pr22263-1a.c pr22263-1b.c } \ |
| {{readelf -r pr22263-1.rd}} \ |
| "pr22263-1" \ |
| "-fPIE -O2 $NOSANITIZE_CFLAGS" \ |
| ] \ |
| ] |