aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arc/include/asm/jump_label.h (follow)
AgeCommit message (Collapse)AuthorFilesLines
2019-11-08ARC: ARCv2: jump label: implement jump label patchingEugeniy Paltsev1-0/+72
Implement jump label patching for ARC. Jump labels provide an interface to generate dynamic branches using self-modifying code. This allows us to implement conditional branches where changing branch direction is expensive but branch selection is basically 'free' This implementation uses 32-bit NOP and BRANCH instructions which forced to be aligned by 4 to guarantee that they don't cross L1 cache line boundary and can be update atomically. Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com> Signed-off-by: Vineet Gupta <vgupta@synopsys.com>