From 2e165080c38a82e70f3507bfcc158111e64a7a71 Mon Sep 17 00:00:00 2001 From: Christoph Mallon Date: Tue, 29 Sep 2009 13:15:20 +0000 Subject: [PATCH] Correct binary emission of TLS entities. [r26663] --- ir/be/ia32/ia32_emitter.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/ir/be/ia32/ia32_emitter.c b/ir/be/ia32/ia32_emitter.c index 833421d23..3d8d34c7c 100644 --- a/ir/be/ia32/ia32_emitter.c +++ b/ir/be/ia32/ia32_emitter.c @@ -2351,6 +2351,14 @@ static void bemit_entity(ir_entity *entity, bool entity_sign, int offset, set_entity_backend_marked(entity, 1); be_gas_emit_entity(entity); + if (get_entity_owner(entity) == get_tls_type()) { + if (get_entity_visibility(entity) == visibility_external_allocated) { + be_emit_cstring("@INDNTPOFF"); + } else { + be_emit_cstring("@NTPOFF"); + } + } + if (is_relative) { be_emit_cstring("-."); offset -= 4; -- 2.20.1