On Wed, Dec 14, 2016 at 09:24:18AM +0100, Jakub Jelinek wrote: > Hi! > > GCC before r237607 used to mishandle TLS in -mcmodel=large - forcing > TLS symbols in constant pool, which obviously doesn't work, because they > aren't constant. For all other models aarch64_tls_symbol_p is checked > first. > > The following patch backports just the bug fix for this PR part to 6.x, > the whole patch has not been declared as a bugfix, came with no testcases, > so I have no idea on what it actually fixes. > > I want to roll GCC 6.3rc1 today, is this ok for 6.3 before that, or do you > prefer to backport it yourself later (post 6.3)? Bootstrapped/regtested > successfully on aarch64-linux on 6 branch. > > Is the testcase alone ok for trunk (additionally I've included it in my > x86_64-linux and i686-linux bootstraps)?
OK. If Wilco thinks the rest of r237607 should be backported, it can go in 6.4. For now, we should at least get this fix in. Thanks, James > > 2016-12-14 Wilco Dijkstra <wdijk...@arm.com> > Jakub Jelinek <ja...@redhat.com> > > PR target/78796 > * config/aarch64/aarch64.c (aarch64_classify_symbol): Merge large > model checks into switch. > > * gcc.dg/tls/pr78796.c: New test.