aboutsummaryrefslogtreecommitdiff
path: root/ports/ChangeLog.tile
diff options
context:
space:
mode:
authorChris Metcalf <cmetcalf@tilera.com>2013-05-24 14:02:31 -0400
committerChris Metcalf <cmetcalf@tilera.com>2013-05-24 14:02:31 -0400
commit86bd05fbc8b3a635148f6a7d8b4fb89c9a524e58 (patch)
tree27f5694a5169d2e4bbb9437f3f70b90debbf0600 /ports/ChangeLog.tile
parente8bdba36c5fdfdb7e85af2b7ed80ea9013794180 (diff)
downloadglibc-86bd05fbc8b3a635148f6a7d8b4fb89c9a524e58.tar
glibc-86bd05fbc8b3a635148f6a7d8b4fb89c9a524e58.tar.gz
glibc-86bd05fbc8b3a635148f6a7d8b4fb89c9a524e58.tar.bz2
glibc-86bd05fbc8b3a635148f6a7d8b4fb89c9a524e58.zip
tile: improve detection for missing -mcmodel=large support
The existing test avoided passing -mcmodel=large if the compiler didn't support it. However, we need to test not just the compiler support, but also the toolchain (as and ld) support, so make the test more complete. In addition, we have to avoid using the hwN_plt() assembly operators if that support is missing, so guard the uses with #ifdef NO_PLT_PCREL. This allows us to properly build glibc with the current community binutils, which doesn't yet have the PC-relative PLT operator support. The -mcmodel=large support is in gcc 4.8, but the toolchain support won't be present in the community until binutils 2.24.
Diffstat (limited to 'ports/ChangeLog.tile')
-rw-r--r--ports/ChangeLog.tile9
1 files changed, 9 insertions, 0 deletions
diff --git a/ports/ChangeLog.tile b/ports/ChangeLog.tile
index 7204ae578b..33ffa71fe6 100644
--- a/ports/ChangeLog.tile
+++ b/ports/ChangeLog.tile
@@ -1,3 +1,12 @@
+2013-05-23 Chris Metcalf <cmetcalf@tilera.com>
+
+ * sysdeps/tile/tilegx/Makefile ($(cflags-mcmodel-large)):
+ Test for assembler and linker support for "-mcmodel=large -fpic"
+ in addition to compiler support; provide -DNO_PLT_PCREL if not.
+ * sysdeps/tile/start.S [NO_PLT_PCREL]: Guard for no PC-relative
+ PLT operators in assembly.
+ * sysdeps/tile/crti.S [NO_PLT_PCREL]: Likewise.
+
2013-05-22 Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>
* sysdeps/unix/sysv/linux/tile/bits/siginfo.h (siginfo_t): Fix comment