<div dir="ltr"><div dir="ltr">Hi Kai,<br><br></div><div dir="ltr"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Is this true, or do I miss something? Sorry if this is a trivial question!</blockquote><div><br></div><div>That's correct, and not at all. :)</div><div><br></div><div> RuntimeDyld does not support the small code model: It requires code to be compiled with the large code model so that references can cover the entire address space.<br></div><div><br></div><div>There is a newer JIT linker, JITLink, which removes this restriction. There is a MachO implementation for AArch64, but no ELF or COFF implementation yet. Once that is written we should be able to support small code model in the JIT.</div><div><br></div><div>-- Lang.</div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Oct 2, 2020 at 10:02 AM Kai Peter Nacke <<a href="mailto:kai.nacke@de.ibm.com">kai.nacke@de.ibm.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Hi!<br>
<br>
Implementing the Memory::allocateMappedMemory() function on z/OS, I see a <br>
failure in the AArch64 COFF test case.<br>
The test case has 3 sections. For each section, <br>
Memory::allocateMappedMemory() is called to reserve memory.<br>
If the distance between the pointers gets too large, then the test case <br>
fails. It can be reliable produced with<br>
a distance of 1MB between the pointers. An easy way to simulate this is to <br>
increase the number of memory bytes<br>
requested by 1MB (e.g. adding NumBytes += (1<<20); at begin of the <br>
method). Then the check if a relocation is correctly<br>
resolved fails.<br>
My current understanding is that the kernel is more or less free to choose <br>
the address of the mapped memory, so this<br>
situation can arise. Is this true, or do I miss something? Sorry if this <br>
is a trivial question!<br>
<br>
Best regards,<br>
Kai<br>
<br>
Kai Nacke<br>
IT Architect<br>
<br>
IBM Deutschland GmbH<br>
Vorsitzender des Aufsichtsrats: Sebastian Krause<br>
Geschäftsführung: Gregor Pillen (Vorsitzender), Agnes Heftberger, Norbert <br>
Janzen, Markus Koerner, Christian Noll, Nicole Reimer<br>
Sitz der Gesellschaft: Ehningen / Registergericht: Amtsgericht Stuttgart, <br>
HRB 14562 / WEEE-Reg.-Nr. DE 99369940<br>
<br>
</blockquote></div>