------- Comment #25 from davek at gcc dot gnu dot org 2009-09-16 10:51 ------- (In reply to comment #24) > As the __emul* decls are using TLS_MODEL_EMULATED, this patch might make even > their SYMBOL_REFs start using that TLS model. But, unlike the user vars, > these > occur normally in the instruction stream, so I wonder if this patch won't > break > things. Perhaps we shouldn't set SYMBOL_REF_TLS_MODEL if DECL_TLS_MODEL is > TLS_MODEL_EMULATED, otherwise it risks that e.g. backends reject it as invalid > constant.
Yes, I see what you mean. There are a lot of references to every other kind of TLS_MODEL_xxx value in the backend files, but no mentions of TLS_MODEL_EMULATED. And just to pick one example: xtensa_legitimize_tls_address() will gcc_unreachable() if it sees that value. So I'll give it one more try, adding a check that the decl's model isn't _EMULATED. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41357