Minor fixes
This commit is contained in:
parent
59a8f58fcd
commit
bd6a2a1254
|
|
@ -376,7 +376,7 @@ fn compile_identity(void) {
|
|||
// ret
|
||||
memory[i++] = 0xc3; // RET opcode
|
||||
|
||||
return (long(*)(long)) memory;
|
||||
return (fn) memory;
|
||||
}
|
||||
|
||||
int main() {
|
||||
|
|
@ -384,7 +384,7 @@ int main() {
|
|||
int i;
|
||||
for (i = 0; i < 10; ++i)
|
||||
printf("f(%d) = %ld\n", i, (*f)(i));
|
||||
munmap((void*) f, 4096);
|
||||
munmap(f, 4096);
|
||||
return 0;
|
||||
}
|
||||
```
|
||||
|
|
|
|||
|
|
@ -26,12 +26,12 @@ fn compile_identity(void) {
|
|||
// mov %rdi, %rax
|
||||
memory[i++] = 0x48; // REX.W prefix
|
||||
memory[i++] = 0x8b; // MOV opcode, register/register
|
||||
memory[i++] = 0xc7; // MOD/RM byte for %rsi -> %rax
|
||||
memory[i++] = 0xc7; // MOD/RM byte for %rdi -> %rax
|
||||
|
||||
// ret
|
||||
memory[i++] = 0xc3; // RET opcode
|
||||
|
||||
return (long(*)(long)) memory;
|
||||
return (fn) memory;
|
||||
}
|
||||
|
||||
int main() {
|
||||
|
|
@ -39,6 +39,6 @@ int main() {
|
|||
int i;
|
||||
for (i = 0; i < 10; ++i)
|
||||
printf("f(%d) = %ld\n", i, (*f)(i));
|
||||
munmap((void*) f, 4096);
|
||||
munmap(f, 4096);
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue