48 lines · plain
1/* SPDX-License-Identifier: GPL-2.0 */2#include <linux/linkage.h>3 4.text5.type perf_regs_load,%function6#define STR_REG(r) str x##r, [x0, 8 * r]7#define LDR_REG(r) ldr x##r, [x0, 8 * r]8#define SP (8 * 31)9#define PC (8 * 32)10SYM_FUNC_START(perf_regs_load)11 STR_REG(0)12 STR_REG(1)13 STR_REG(2)14 STR_REG(3)15 STR_REG(4)16 STR_REG(5)17 STR_REG(6)18 STR_REG(7)19 STR_REG(8)20 STR_REG(9)21 STR_REG(10)22 STR_REG(11)23 STR_REG(12)24 STR_REG(13)25 STR_REG(14)26 STR_REG(15)27 STR_REG(16)28 STR_REG(17)29 STR_REG(18)30 STR_REG(19)31 STR_REG(20)32 STR_REG(21)33 STR_REG(22)34 STR_REG(23)35 STR_REG(24)36 STR_REG(25)37 STR_REG(26)38 STR_REG(27)39 STR_REG(28)40 STR_REG(29)41 STR_REG(30)42 mov x1, sp43 str x1, [x0, #SP]44 str x30, [x0, #PC]45 LDR_REG(1)46 ret47SYM_FUNC_END(perf_regs_load)48