From ea9fb8b3e9f9624262984ad402f2aac34c65534d Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Mon, 27 Jul 2015 05:15:48 -0700 Subject: [PATCH] Add $PLT_CFLAGS to -fPIC for run_cc_link_tests Some x86 linker tests expect PLT. This patch adds $PLT_CFLAGS to -fPIC for run_cc_link_tests. * ld-i386/i386.exp (run_cc_link_tests): Add $PLT_CFLAGS to -fPIC if needed. * ld-x86-64/mpx.exp (run_cc_link_tests): Likewise. * ld-x86-64/x86-64.exp (run_cc_link_tests): Likewise. --- ld/testsuite/ChangeLog | 7 +++ ld/testsuite/ld-i386/i386.exp | 7 ++- ld/testsuite/ld-x86-64/mpx.exp | 73 ++++++++++++++++++++++--------- ld/testsuite/ld-x86-64/x86-64.exp | 7 ++- 4 files changed, 69 insertions(+), 25 deletions(-) diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index bac91723be..2e0bd92c15 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2015-07-27 H.J. Lu + + * ld-i386/i386.exp (run_cc_link_tests): Add $PLT_CFLAGS to + -fPIC if needed. + * ld-x86-64/mpx.exp (run_cc_link_tests): Likewise. + * ld-x86-64/x86-64.exp (run_cc_link_tests): Likewise. + 2015-07-27 H.J. Lu * ld-elfvsb/elfvsb.exp (visibility_run): Pass $PLT_CFLAGS to diff --git a/ld/testsuite/ld-i386/i386.exp b/ld/testsuite/ld-i386/i386.exp index 61f9599846..0dbdd1e06e 100644 --- a/ld/testsuite/ld-i386/i386.exp +++ b/ld/testsuite/ld-i386/i386.exp @@ -310,6 +310,9 @@ run_dump_test "pr17057" run_dump_test "pr17935-1" run_dump_test "pr17935-2" +# Add $PLT_CFLAGS if PLT is expected. +global PLT_CFLAGS + # Must be Linux native with the C compiler if { [isnative] && [istarget "i?86-*-linux*"] @@ -342,7 +345,7 @@ if { [isnative] [list \ "Build libplt-main3.a" \ "" \ - "-fPIC" \ + "-fPIC $PLT_CFLAGS" \ { plt-main3.c } \ {{readelf {-Wr} plt-main3.rd}} \ "libplt-main3.a" \ @@ -350,7 +353,7 @@ if { [isnative] [list \ "Build libplt-main4.a" \ "" \ - "-fPIC" \ + "-fPIC $PLT_CFLAGS" \ { plt-main4.c } \ {{readelf {-Wr} plt-main4.rd}} \ "libplt-main4.a" \ diff --git a/ld/testsuite/ld-x86-64/mpx.exp b/ld/testsuite/ld-x86-64/mpx.exp index 585387d3f2..07e244e502 100644 --- a/ld/testsuite/ld-x86-64/mpx.exp +++ b/ld/testsuite/ld-x86-64/mpx.exp @@ -36,28 +36,59 @@ if { [which $CC] == 0 } { return } -set build_tests { - {"Build libmpx1a.a" - "" "-Wa,-madd-bnd-prefix -fPIC" - {mpx1a.c} {{readelf {-r --wide} mpx1a.rd}} "libmpx1a.a"} - {"Build libmpx1b.a" - "" "" - {mpx1b.c} {} "libmpx1b.a"} - {"Build libmpx1c.a" - "" "-Wa,-madd-bnd-prefix" - {mpx1c.c} {{readelf {-r --wide} mpx1c.rd}} "libmpx1c.a"} - {"Build libmpx2a.a" - "" "-Wa,-madd-bnd-prefix -fPIE" - {mpx2a.c} {{readelf {-r --wide} mpx2a.rd}} "libmpx2a.a"} - {"Build libmpx2b.a" - "" "-fPIE" - {mpx2b.c} {} "libmpx2b.a"} - {"Build libmpx2c.a" - "" "-Wa,-madd-bnd-prefix -fPIE" - {mpx2c.c} {{readelf {-r --wide} mpx2c.rd}} "libmpx2c.a"} -} +# Add $PLT_CFLAGS if PLT is expected. +global PLT_CFLAGS -run_cc_link_tests $build_tests +run_cc_link_tests [list \ + [list \ + "Build libmpx1a.a" \ + "" \ + "-Wa,-madd-bnd-prefix -fPIC $PLT_CFLAGS" \ + {mpx1a.c} \ + {{readelf {-r --wide} mpx1a.rd}} \ + "libmpx1a.a" \ + ] \ + [list \ + "Build libmpx1b.a" \ + "" \ + "" \ + {mpx1b.c} \ + {} \ + "libmpx1b.a" \ + ] \ + [list \ + "Build libmpx1c.a" \ + "" \ + "-Wa,-madd-bnd-prefix" \ + {mpx1c.c} \ + {{readelf {-r --wide} mpx1c.rd}} \ + "libmpx1c.a" \ + ] \ + [list \ + "Build libmpx2a.a" \ + "" \ + "-Wa,-madd-bnd-prefix -fPIE $PLT_CFLAGS" \ + {mpx2a.c} \ + {{readelf {-r --wide} mpx2a.rd}} \ + "libmpx2a.a" \ + ] \ + [list \ + "Build libmpx2b.a" \ + "" \ + "-fPIE" \ + {mpx2b.c} \ + {} \ + "libmpx2b.a" \ + ] \ + [list \ + "Build libmpx2c.a" \ + "" \ + "-Wa,-madd-bnd-prefix -fPIE $PLT_CFLAGS" \ + {mpx2c.c} \ + {{readelf {-r --wide} mpx2c.rd}} \ + "libmpx2c.a" \ + ] \ +] set run_tests { {"Run mpx1" diff --git a/ld/testsuite/ld-x86-64/x86-64.exp b/ld/testsuite/ld-x86-64/x86-64.exp index 3669446aaf..d67ff2a346 100644 --- a/ld/testsuite/ld-x86-64/x86-64.exp +++ b/ld/testsuite/ld-x86-64/x86-64.exp @@ -326,6 +326,9 @@ run_dump_test "pr17935-2" run_dump_test "pr18160" run_dump_test "pr18176" +# Add $PLT_CFLAGS if PLT is expected. +global PLT_CFLAGS + # Must be native with the C compiler if { [isnative] && [which $CC] != 0 } { run_cc_link_tests { @@ -376,7 +379,7 @@ if { [isnative] && [which $CC] != 0 } { [list \ "Build libplt-main3.a" \ "" \ - "-fPIC" \ + "-fPIC $PLT_CFLAGS" \ { plt-main3.c } \ {{readelf {-Wr} plt-main3.rd}} \ "libplt-main3.a" \ @@ -384,7 +387,7 @@ if { [isnative] && [which $CC] != 0 } { [list \ "Build libplt-main4.a" \ "" \ - "-fPIC" \ + "-fPIC $PLT_CFLAGS" \ { plt-main4.c } \ {{readelf {-Wr} plt-main4.rd}} \ "libplt-main4.a" \ -- 2.34.1