[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug ld/2984] New: Incorrect relocation for TLS variable using LE access
From: |
carmelo73 at gmail dot com |
Subject: |
[Bug ld/2984] New: Incorrect relocation for TLS variable using LE access model |
Date: |
31 Jul 2006 12:24:57 -0000 |
Running a simple test from glibc tests, I bumped into this problem.
The test defines a static TLS variable with an alignement constraint of 4096.
The compiler generates correctly a TPOFF relocation. At the end of the link
stage,
the relocated value is evaluated to 8 (it should be the TCB size), not taking
care of the alignement constraint.
Here follows the simple test exploiting the bug:
#define AL 4096
struct foo
{
int i;
} __attribute ((aligned (AL)));
static __thread struct foo f;
int
main (void)
{
int result = 0;
int fail = (((unsigned int) &f) & (AL - 1)) != 0;
printf ("&f = %p %s\n", &f, fail ? "FAIL" : "OK");
result |= fail;
return result;
}
--
Summary: Incorrect relocation for TLS variable using LE access
model
Product: binutils
Version: 2.15
Status: NEW
Severity: normal
Priority: P2
Component: ld
AssignedTo: unassigned at sources dot redhat dot com
ReportedBy: carmelo73 at gmail dot com
CC: bug-binutils at gnu dot org,carmelo73 at gmail dot com
GCC host triplet: Linux ReadHat Enterprise AS4 - 2.6.9-5ELsmp
GCC target triplet: SH4
http://sourceware.org/bugzilla/show_bug.cgi?id=2984
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
- [Bug ld/2984] New: Incorrect relocation for TLS variable using LE access model,
carmelo73 at gmail dot com <=