3 ms·
I can't really answer that but your question reminded me of https://www.strchr.com/x86_machine_code_statistics https://www.strchr.com/x86_machine_code_statistic
by simias 9y ago
I can't really answer that but your question reminded me of https://www.strchr.com/x86_machine_code_statistics https://www.strchr.com/x86_machine_code_statistics
Turns out that in practice a tiny number of instructions make up the vast majority of all used upcodes in a typical application (although it's not clear in this article how long the tail is, there could be hundreds of instruction in that "others" slice).
My understanding is that there are many legacy instructions in x86 that are basically never used nowadays. They're still a problem for silicon designers because they still have to implement them for compatibility purposes but compiler developers can chose not to use them and instead select a more "risc-y" subset of instructions to do the bulk of the work.