#46

ntdll ARM64EC: sync the TLS index into the iOS JIT copy

OpenDeathKhanwants to merge intofrom

On iOS an ARM64EC image executes from a JIT-pool copy made before alloc_tls_slot() runs. Compiler-generated TLS accesses read AddressOfIndex through that copy, so the loader's write to the PE image never reached the code that runs, and every DLL with static TLS used slot 0 (the main EXE's).

Write the allocated index through a new append-only unix call, unix_ios_sync_pe_write, before any TLS callback or DllMain runs. Needs the matching unixlib entry in Madeira's build/ntdll-unix (companion PR).

Found from a Steam host crash where DLL thread_local state aliased the EXE's. On iPhone (iOS 27.2) the [tls-jit-sync] line reports copied=1 for UnityPlayer.dll, d3d11.dll, DXGI.dll and Steam's D3D9 module, so the sync runs on device; we have not re-run the original crashing game since.


Dependency: pairs with willfaust/Madeira#368 (unix-side unix_ios_sync_pe_write). Merge both together; Madeira then needs the wine gitlink bump and a rebuilt arm64ec-windows/ntdll.dll.