1 // SPDX-License-Identifier: GPL-2.0-or-later 2 /* 3 * Copyright 2010 Michael Ellerman, IBM Corp. 4 */ 5 6 #include <linux/kernel.h> 7 #include <linux/jump_label.h> 8 #include <asm/code-patching.h> 9 #include <asm/inst.h> 10 11 void arch_jump_label_transform(struct jump_entry *entry, 12 enum jump_label_type type) 13 { 14 u32 *addr = (u32 *)jump_entry_code(entry); 15 16 if (type == JUMP_LABEL_JMP) 17 patch_branch(addr, jump_entry_target(entry), 0); 18 else 19 patch_instruction(addr, ppc_inst(PPC_RAW_NOP())); 20 } 21