rudkx
Joined 12 years ago
Karma
2
Submissions
2
Member since
May 26
Joined 12 years ago
To be blunt though, I don't think the idea is very interesting for a few reasons:
- It doesn't address how you decide which edges to speculatively consider executable.
- Optimizers intentionally do not play the "what if" game and try optimizing things multiple different ways to see what wins or what gains might be had. It simply gets too expensive (in compile time) too quickly.
- There are already other ways to achieve similar effect, e.g. superblock formation or simple tail duplication (which can be done for specific effect, e.g. see branch threading in LLVM).
True, I somehow forgot that stipulation by the time I got to the end of the post.