blob: ca37702bde97b3ce7291558add0fea2621edcb18 [file] [log] [blame]
David Brazdil0f672f62019-12-10 10:32:29 +00001// SPDX-License-Identifier: GPL-2.0-or-later
Andrew Scullb4b6d4a2019-01-02 15:54:55 +00002/*
3 * Copyright 2010 Michael Ellerman, IBM Corp.
Andrew Scullb4b6d4a2019-01-02 15:54:55 +00004 */
5
6#include <linux/kernel.h>
7#include <linux/jump_label.h>
8#include <asm/code-patching.h>
9
Andrew Scullb4b6d4a2019-01-02 15:54:55 +000010void arch_jump_label_transform(struct jump_entry *entry,
11 enum jump_label_type type)
12{
13 u32 *addr = (u32 *)(unsigned long)entry->code;
14
15 if (type == JUMP_LABEL_JMP)
16 patch_branch(addr, entry->target, 0);
17 else
18 patch_instruction(addr, PPC_INST_NOP);
19}