diff options
author | Jan Kotas <jkotas@microsoft.com> | 2016-02-19 20:38:22 +0300 |
---|---|---|
committer | Jan Kotas <jkotas@microsoft.com> | 2016-02-19 20:38:22 +0300 |
commit | a07f7734d1a3d72b3188e54a7180ecb5519d1aa0 (patch) | |
tree | 44db222555c0140e6f2c51f6f8b728450a2aded8 /src/Native/Runtime/arm64 | |
parent | 2171677443cabd01f94293e17380e05e0d776b44 (diff) |
Use RhpGetThread helper in ExceptionHandling.asm
The inline TLS access in Windows assembly code depends on hardcoded TLS offset. The hardcoded offset does not work well for static linking used by CoreRT because of it can be anything depending on what other thread local variables got linked in. I have changed the TLS access in ExceptionHandling.asm where it is causing problem right now to call the RhpGetThread instead.
Diffstat (limited to 'src/Native/Runtime/arm64')
-rw-r--r-- | src/Native/Runtime/arm64/AsmMacros.h | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/Native/Runtime/arm64/AsmMacros.h b/src/Native/Runtime/arm64/AsmMacros.h index 7435dd923..d3b5bd574 100644 --- a/src/Native/Runtime/arm64/AsmMacros.h +++ b/src/Native/Runtime/arm64/AsmMacros.h @@ -15,9 +15,6 @@ TSF_SuppressGcStress equ 0x08 TSF_DoNotTriggerGc equ 0x10 TSF_SuppressGcStress__OR__TSF_DoNotTriggerGC equ 0x18 -;; Slot number of the Finalize virtual method. -METHOD_SLOT_Finalize equ 0 - ;; GC type flags GC_ALLOC_FINALIZE equ 1 GC_ALLOC_ALIGN8_BIAS equ 4 @@ -26,11 +23,13 @@ GC_ALLOC_ALIGN8 equ 8 ;; Note: these must match the defs in PInvokeTransitionFrameFlags defined in rhbinder.h ;; FIXME:ARM64 +ifndef CORERT; Hardcoded TLS offsets are not compatible with static linking ;; ;; This constant, unfortunately, cannot be validated at build time. ;; FIXME:ARM64 ;; OFFSETOF__TLS__tls_CurrentThread equ 0x10 +endif ;; ;; Rename fields of nested structs |