-
Yarn: Implement fiber context switching for Windows, macOS, Linux and Android. · ad9f510aBen Clayton authored
Windows uses OSFiber_windows.hpp. macOS and Linux uses OSFiber_asm_* or OSFiber_ucontext.hpp Android has no support for makecontext / swapcontext, and so relies on the OSFiber_asm_* implementations. Unlike makecontext, swapcontext or the Windows fiber APIs, these assembly implementations *do not* save or restore signal masks, floating-point control or status registers, FS and GS segment registers, thread-local storage state nor any SIMD registers. This should not be a problem as the yarn scheduler requires fibers to be executed on a single thread. Bug: b/139010488 Change-Id: I5f890ffe4f069361a7eeae64567a77be3a4ba008 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/34771Tested-by:
Ben Clayton <bclayton@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
ad9f510a
×