Use allocateExecutable() in LLVMReactor
LLVMReactor was using default memory mapper when creating
SectionMemoryManager. The default memory mapper calls mmap() to allocate
memory on all platforms except Windows. It doesn't specify MAP_JIT flag
that is required to create executable memory on Mac and Fuchsia. As
result the allocated memory is not executable, which leads to crashes
when trying to run the generated code. Update LLVMRector to use a custom
MemoryMapper implementation.
Bug: chromium:1032622, b/145348318
Change-Id: Id188af269d80371b709e625c29b92ff546e9ba28
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/39408
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Tested-by:
Sergey Ulanov <sergeyu@chromium.org>
Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
Showing
Please
register
or
sign in
to comment