backend/x64: Support W^X systems

Closes #176.
This commit is contained in:
MerryMage 2018-08-22 13:16:26 +01:00
parent 2a65442933
commit 3432a08e0a
5 changed files with 59 additions and 1 deletions

View file

@ -34,6 +34,11 @@ public:
/// Call when external emitters have finished emitting their preludes.
void PreludeComplete();
/// Change permissions to RW. This is required to support systems with W^X enforced.
void EnableWriting();
/// Change permissions to RX. This is required to support systems with W^X enforced.
void DisableWriting();
/// Clears this block of code and resets code pointer to beginning.
void ClearCache();
/// Calculates how much space is remaining to use. This is the minimum of near code and far code.