Reland "Reland "[VM runtime] Dual mapping of executable pages.""
This is a reland of6da340bf76Original change's description: > Reland "[VM runtime] Dual mapping of executable pages." > > This is a reland of44186dfdcd> > Original change's description: > > [VM runtime] Dual mapping of executable pages. > > > > Change-Id: Iaad78d324e25462ce951f4df26974a6a368c50b7 > > Reviewed-on: https://dart-review.googlesource.com/c/93377 > > Commit-Queue: Régis Crelier <regis@google.com> > > Reviewed-by: Ryan Macnak <rmacnak@google.com> > > Change-Id: I7a0caa078950637d9fe831732577fd2467061099 > Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/95263 > Reviewed-by: Ryan Macnak <rmacnak@google.com> Change-Id: I3a01f0e67d733c5db41618f691431e72c1e1cb2e Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96422 Reviewed-by: Ryan Macnak <rmacnak@google.com> Commit-Queue: Régis Crelier <regis@google.com>
This commit is contained in:
committed by
commit-bot@chromium.org
parent
49a0502f49
commit
a39833d957
@@ -19,10 +19,12 @@ class RawCode;
|
||||
class RawFunction;
|
||||
class RawObject;
|
||||
|
||||
#if defined(TARGET_ARCH_IA32) || defined(TARGET_ARCH_DBC)
|
||||
// Stack-allocated class to create a scope where the specified region
|
||||
// [address, address + size] has write access enabled. This is used
|
||||
// when patching generated code. Access is reset to read-execute in
|
||||
// the destructor of this scope.
|
||||
// Dual mapping of instructions pages is not supported on these target arch.
|
||||
class WritableInstructionsScope : public ValueObject {
|
||||
public:
|
||||
WritableInstructionsScope(uword address, intptr_t size);
|
||||
@@ -32,6 +34,7 @@ class WritableInstructionsScope : public ValueObject {
|
||||
const uword address_;
|
||||
const intptr_t size_;
|
||||
};
|
||||
#endif // defined(TARGET_ARCH_IA32) || defined(TARGET_ARCH_DBC)
|
||||
|
||||
class CodePatcher : public AllStatic {
|
||||
public:
|
||||
|
||||
Reference in New Issue
Block a user