The case of a program that crashed on its first instruction
devblogs.microsoft.com
The case of a program that crashed on its first instruction
1–10 of 20 posts
Re: The case of a program that crashed on its first instruction
#2Then I read one Raymond's investigations like this and realise I'm still not that good.
Re: The case of a program that crashed on its first instruction
#3"So at least it’s nice that this rogue code was compiled with stack buffer overflow protection. Can’t be too careful."
Re: The case of a program that crashed on its first instruction
#4Sometimes I start to feel like I'm pretty good at what I do. Then I read one Raymond's investigations like this and realise I'm still not that good.
I do that very rarely, and I only analyze the dumps of the programs I made. Of course, Raymond is way better than me at that, but I’m fine with it. People pay me to develop software for them; I only debug stuff when I have to.
BTW, couple years ago I wrote an article on the topic: http://const.me/articles/windbg/windbg-intro.pdf
Re: The case of a program that crashed on its first instruction
#5Sometimes I start to feel like I'm pretty good at what I do. Then I read one Raymond's investigations like this and realise I'm still not that good.
Re: The case of a program that crashed on its first instruction
#6It follows then that with a sufficiently good optimizer every program can be reduced to a single wrong instruction.
Re: The case of a program that crashed on its first instruction
#7 :root > body {
visibility: visible;
opacity: 1;
}Re: The case of a program that crashed on its first instruction
#8Sometimes I start to feel like I'm pretty good at what I do. Then I read one Raymond's investigations like this and realise I'm still not that good.
Re: The case of a program that crashed on its first instruction
#9I remember someone quipped that every program always has at least one bug left, and every program could be optimized to be smaller. It follows then that with a sufficiently good optimizer every program can be reduced to a single wrong instruction.
/* Optimize a program.
May perform unsafe optimizations.
May introduce up to 1 bug.
*/
char *optimize(char *program) {
(void) program;
return ".export main\nmain:\n\tub2\n";
}