aboutsummaryrefslogtreecommitdiff
path: root/arch/mips/kernel/cacheinfo.c
diff options
context:
space:
mode:
authorJinyang He <hejinyang@loongson.cn>2021-01-21 13:31:38 +0800
committerThomas Bogendoerfer <tsbogend@alpha.franken.de>2021-01-25 12:21:23 +0100
commit50886234e846bbf2cbf14a86c727e5fc309fdf25 (patch)
tree5301ada42dc0d4e3e629819a177bb205632bfb82 /arch/mips/kernel/cacheinfo.c
parent2d62f64bcc72ba45f73e58199f8e1b8cc5b67489 (diff)
MIPS: Add is_jr_ra_ins() to end the loop early
For those leaf functions, they are likely to have no stack operations. Add is_jr_ra_ins() to determine whether jr ra has been touched before the frame_size is found. Without this patch, the get frame_size operation may be out of range and get the frame_size from the next nested function. There is no POOL32A format in uapi/asm/inst.h, so some bits here use the format of r_format instead. e.g. --------------------------------------------------------------------- | format | 31:26 | 25:21 | 20:16 | 15:6 | 5:0 | -----------------+---------+-------+-------+------------+------------ | pool32a_format | pool32a | rt | rs | jalrc | pool32axf | -----------------+---------+-------+-------+------------+------------ | r_format | opcode | rs | rt | rd:5, re:5 | func | --------------------------------------------------------------------- Signed-off-by: Jinyang He <hejinyang@loongson.cn> Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Diffstat (limited to 'arch/mips/kernel/cacheinfo.c')
0 files changed, 0 insertions, 0 deletions