fixing some comments
This commit is contained in:
parent
9f1f93d9e4
commit
ccaa4bfbf0
1 changed files with 4 additions and 5 deletions
|
|
@ -12,12 +12,11 @@ typedef struct detour_trampoline
|
||||||
// An ARM64 instruction is 4 bytes long.
|
// An ARM64 instruction is 4 bytes long.
|
||||||
//
|
//
|
||||||
// The overwrite is always composed of 3 instructions (12 bytes) which perform an indirect jump
|
// The overwrite is always composed of 3 instructions (12 bytes) which perform an indirect jump
|
||||||
// using _DETOUR_TRAMPOLINE::pbDetour as the address holding the target location.
|
// using detour_trampoline::ptr_detour as the address holding the target location.
|
||||||
//
|
//
|
||||||
// Copied instructions can expand.
|
// Copied instructions can expand.
|
||||||
//
|
//
|
||||||
// The scheme using MovImmediate can cause an instruction
|
// The scheme using MovImmediate can cause an instruction to grow as much as 6 times.
|
||||||
// to grow as much as 6 times.
|
|
||||||
// That would be Bcc or Tbz with a large address space:
|
// That would be Bcc or Tbz with a large address space:
|
||||||
// 4 instructions to form immediate
|
// 4 instructions to form immediate
|
||||||
// inverted tbz/bcc
|
// inverted tbz/bcc
|
||||||
|
|
@ -27,11 +26,11 @@ typedef struct detour_trampoline
|
||||||
// 3 instructions to form immediate
|
// 3 instructions to form immediate
|
||||||
// br or brl
|
// br or brl
|
||||||
//
|
//
|
||||||
// A theoretical maximum for rbCode is thefore 4*4*6 + 16 = 112 (another 16 for jmp to pbRemain).
|
// A theoretical maximum for `code` is therefore 4*4*6 + 16 = 112 (another 16 for jmp to ptr_remain).
|
||||||
//
|
//
|
||||||
// With literals, the maximum expansion is 5, including the literals: 4*4*5 + 16 = 96.
|
// With literals, the maximum expansion is 5, including the literals: 4*4*5 + 16 = 96.
|
||||||
//
|
//
|
||||||
// The number is rounded up to 128. m_rbScratchDst should match this.
|
// The number is rounded up to 128.
|
||||||
//
|
//
|
||||||
uint8_t code[128]; // target code + jmp to pbRemain
|
uint8_t code[128]; // target code + jmp to pbRemain
|
||||||
uint8_t code_size; // size of moved target code.
|
uint8_t code_size; // size of moved target code.
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue