News for hackers. Stuff that matters.
Re:Asmttpd: Web server for Linux written in amd64 assembly (... by kijiki on Friday July 13, 2018 @04:35PM (#17526468)
x86 has LOADALL and SAVEALL.

https://en.wikipedia.org/wiki/LOADALL

Re:Asmttpd: Web server for Linux written in amd64 assembly (... by msla on Friday July 13, 2018 @04:57PM (#17526638)
Those undocumented instructions don't exist on x86_64, and they could be used to do bizarre things on the processors which had them:

> As the two LOADALL instructions were never documented and do not exist on later processors, the opcodes were reused in the AMD64 architecture.[8] The opcode for the 286 LOADALL instruction, 0F05, became the AMD64 instruction SYSCALL; the 386 LOADALL instruction, 0F07, became the SYSRET instruction. These definitions were cemented even on Intel CPUs with the introduction of the Intel 64 implementation of AMD64.[9]

[snip]

> Because LOADALL did not perform any checks on the validity of the data loaded into processor registers, it was possible to load a processor state that could not be normally entered, such as using real mode (PE=0) together with paging (PG=1) on 386-class CPUs.[7]

Re:Asmttpd: Web server for Linux written in amd64 assembly (... by scandinavian on Friday July 13, 2018 @05:25PM (#17526830)
What about PUSHAD and POPAD for x86, those are not undocumented right?
Re:Asmttpd: Web server for Linux written in amd64 assembly (... by jamieiles on Friday July 13, 2018 @05:36PM (#17526927)
There is no pusha in long mode though, you need to push individual regs.