I disassembled all libraries and binaries in all riscv64 debian packages and counted how often each individual instruction is used: http://svn.clifford.at/handicraft/2018/rvinsfreq/combined.txt … (The most frequently used instruction is "http://c.mv ", followed by "auipc", "addi", and "jal".)
-
-
Replying to @oe1cxw
macro-op fusion pattern matching would be useful. i.e. pairs where the temporary in the first instruction overwrites the second. However there is a chicken and egg problem because to properly exploit macro-op fusion, the compiler needs rules to emit the pairs.
1 reply 0 retweets 0 likes -
Replying to @contramork @oe1cxw
What’s worse is that the instruction scheduling you should do for simple macro-op fusion is the exact *opposite* of what you should do for a simple in-order superscalar processor. I.e. deliberately put dependent instructions together instead of deliberately separating them.
3 replies 0 retweets 1 like -
Replying to @BruceHoult @oe1cxw
There is also a debate as to whether macro-op fusion pairs should be represented by assembler pseudo ops or whether they are handled with macro-op fusion aware instruction selection and instruction scheduling.
3 replies 0 retweets 0 likes -
Replying to @contramork @oe1cxw
Big OOO cores can hopefully do fusion of non-adjacent but dependent instructions, and on single-dispatch cores with no fusion it doesn't matter...
1 reply 0 retweets 2 likes
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.