Create new MDInstrAddr type to capture addresses of instructions as metadata.
Add abstract branch predictor interface
Add first naive branch predictor; this will always predict that a branch will go where it most recently went. For simple loops this is already good since we will only break out of the loop once at the end of it
Works with the vivisect Broker only as other brokers don't add instruction address metadata currently. Look for messages like this in the debug output to see it in action:
[MCAD FetchDelayStage] Previous branch at bfca0 predicted correctly.
[MCAD FetchDelayStage] Previous branch at bfca0 mispredicted, delaying next instruction by 20 cycle(s).
MDInstrAddr
type to capture addresses of instructions as metadata.Works with the
vivisect
Broker only as other brokers don't add instruction address metadata currently. Look for messages like this in the debug output to see it in action: