Minor fixes

This commit is contained in:
Spencer Tipping 2017-03-09 22:27:32 -07:00
parent 59a8f58fcd
commit bd6a2a1254
2 changed files with 5 additions and 5 deletions

View File

@ -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;
}
```

View File

@ -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;
}