I am working with ARMV8 Cortex A72 architecture,i want to know can i turn off branch prediction?and how can i do it?
I guess it can't (ARM 100095_0003_06_en):6.5.5 Enabling program flow prediction Program flow prediction is always enabled and no programming is required to take advantage ofprogram flow prediction.When reset, the processor:• Invalidates the BTB.• Resets the GHB and indirect predictor to a known state.No software intervention is required to prepare the prediction logic before enabling program flowprediction.
The CPU Auxiliary Control Register (CPUACTLR_EL1) of the Cortex-A72 provides some level of control over the branch prediction:
Bit 34 disables static branch predictor.
Bit 33 disables main prediction suppression at target fetch of microBTB.
Bit 4 disables indirect predictor.
Bit 3 disables micro BTB.
The section Program flow prediction of A72 TRM gives some details about each function.
View all questions in Cortex-A / A-Profile forum