alt_entry
void __init_or_module andes_errata_patch_func(struct alt_entry *begin, struct alt_entry *end,
void mips_errata_patch_func(struct alt_entry *begin, struct alt_entry *end,
struct alt_entry *alt;
void sifive_errata_patch_func(struct alt_entry *begin, struct alt_entry *end,
struct alt_entry *alt;
void thead_errata_patch_func(struct alt_entry *begin, struct alt_entry *end,
struct alt_entry *alt;
void andes_errata_patch_func(struct alt_entry *begin, struct alt_entry *end,
void mips_errata_patch_func(struct alt_entry *begin, struct alt_entry *end,
void sifive_errata_patch_func(struct alt_entry *begin, struct alt_entry *end,
void thead_errata_patch_func(struct alt_entry *begin, struct alt_entry *end,
void riscv_cpufeature_patch_func(struct alt_entry *begin, struct alt_entry *end,
static void __init_or_module _apply_alternatives(struct alt_entry *begin,
struct alt_entry *end,
struct alt_entry *begin, *end;
_apply_alternatives((struct alt_entry *)begin,
(struct alt_entry *)end,
_apply_alternatives((struct alt_entry *)__alt_start,
(struct alt_entry *)__alt_end,
_apply_alternatives((struct alt_entry *)__alt_start,
(struct alt_entry *)__alt_end,
_apply_alternatives((struct alt_entry *)start,
(struct alt_entry *)(start + length),
void (*patch_func)(struct alt_entry *begin, struct alt_entry *end,
void __init_or_module riscv_cpufeature_patch_func(struct alt_entry *begin,
struct alt_entry *end,
struct alt_entry *alt;
.macro alt_entry orig_start, orig_end, alt_start, alt_end, feature
alt_entry 772b, 773b, 770b, 771b, \feature
alt_entry 773b, 774b, 770b, 771b,\feature1
alt_entry 773b, 774b, 771b, 772b,\feature2