[llvm-commits] [llvm] [Patch] Add RuntimeDyld.invalidateEmittedSectionsCache()

Danil Malyshev dmalyshev at accesssoftek.com
Tue May 8 16:09:40 PDT 2012


Hi,

Please review changed the patch.
This patch adds finalize() to RTDyldMemoryManager, and implements it for MCJITMemoryManager as invalidate instruction cache.


Regards,
Danil


________________________________
From: Jim Grosbach [grosbach at apple.com]
Sent: Monday, May 07, 2012 4:16 PM
To: Danil Malyshev
Cc: llvm-commits at cs.uiuc.edu
Subject: Re: [llvm-commits] [llvm] [Patch] Add RuntimeDyld.invalidateEmittedSectionsCache()

Hi Danil,

That's not the RuntimeDyld's job. That functionality belongs in elsewhere, probably in the client's memory manager implementation where it's hooked into copying the compiled code into the target's address space. For a hosted platform, something similar just w/o the copying.

-Jim

On May 7, 2012, at 2:09 PM, Danil Malyshev <dmalyshev at accesssoftek.com<mailto:dmalyshev at accesssoftek.com>> wrote:

Hi everyone,



Please review attached the patch.
This patch adds invalidateEmmittedSectionsCache() to the RuntimeDyld and uses it in the MCJIT after resolve relocations.
The MCJIT works unstable on the ARM platforms without it.
This patch haven't any tests because I want to commit the common ExecutionEngine/MCJIT tests after attached the patch will be committed. These tests will cover it.
Regards,
Danil
<RuntimeDyld_invalidateEmittedSectionsCache-01.patch>_______________________________________________
llvm-commits mailing list
llvm-commits at cs.uiuc.edu<mailto:llvm-commits at cs.uiuc.edu>
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20120508/50eb67e3/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: RTDyldMemoryManager_finalize-01.patch
Type: application/octet-stream
Size: 4116 bytes
Desc: RTDyldMemoryManager_finalize-01.patch
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20120508/50eb67e3/attachment.obj>


More information about the llvm-commits mailing list