brintos

brintos / linux-shallow public Read only

0
0
Text · 726 B · 869a0eb Raw
35 lines · c
1// SPDX-License-Identifier: GPL-2.02 3static4struct ins_ops *riscv64__associate_ins_ops(struct arch *arch, const char *name)5{6	struct ins_ops *ops = NULL;7 8	if (!strncmp(name, "jal", 3) ||9	    !strncmp(name, "jr", 2) ||10	    !strncmp(name, "call", 4))11		ops = &call_ops;12	else if (!strncmp(name, "ret", 3))13		ops = &ret_ops;14	else if (name[0] == 'j' || name[0] == 'b')15		ops = &jump_ops;16	else17		return NULL;18 19	arch__associate_ins_ops(arch, name, ops);20 21	return ops;22}23 24static25int riscv64__annotate_init(struct arch *arch, char *cpuid __maybe_unused)26{27	if (!arch->initialized) {28		arch->associate_instruction_ops = riscv64__associate_ins_ops;29		arch->initialized = true;30		arch->objdump.comment_char = '#';31	}32 33	return 0;34}35