Timeline for Tips for golfing in x86/x64 machine code
Current License: CC BY-SA 4.0
8 events
when toggle format | what | by | license | comment | |
---|---|---|---|---|---|
Feb 11, 2023 at 0:34 | history | edited | Peter Cordes | CC BY-SA 4.0 |
added 212 characters in body
|
Dec 7, 2020 at 16:53 | history | edited | 640KB | CC BY-SA 4.0 |
added 31 characters in body
|
Jun 17, 2020 at 9:04 | history | edited | CommunityBot |
Commonmark migration
|
|
Jan 10, 2020 at 5:04 | comment | added | General Grievance | A couple others: eflags is set to 0x202, mxcsr is set to 0x1f80, though you can't directly access them. | |
May 4, 2019 at 22:02 | history | edited | 640KB | CC BY-SA 4.0 |
deleted 77 characters in body
|
May 3, 2019 at 1:50 | comment | added | Peter Cordes |
Code Golf rules say your code has to work on at least one implementation. Linux chooses to zero all the regs (except RSP) and stack before entering a fresh user-space process, even though the i386 and x86-64 System V ABI docs say they're "undefined" on entry to _start . So yes it's fair game to take advantage of that if you're writing a program instead of a function. I did so in Extreme Fibonacci. (In a dynamically-linked executable, ld.so runs before jumping to your _start , and does leave garbage in registers, but static is just your code.)
|
|
Mar 12, 2019 at 18:50 | history | edited | 640KB | CC BY-SA 4.0 |
edited body
|
Mar 12, 2019 at 18:43 | history | answered | 640KB | CC BY-SA 4.0 |