diff options
| author | chenmiao <chenmiao.ku@gmail.com> | 2025-09-05 18:12:58 +0000 |
|---|---|---|
| committer | Stafford Horne <shorne@gmail.com> | 2025-09-11 11:27:59 +0100 |
| commit | 8c30b0018f9d93391573e091960d257fd9de120a (patch) | |
| tree | 4640531e83b421b427d1e99db65d768da91078e1 /Documentation/features/core | |
| parent | 09a27fc32e3d69be93fdb898690932ad5bc592d8 (diff) | |
| download | linux-next-8c30b0018f9d93391573e091960d257fd9de120a.tar.gz linux-next-8c30b0018f9d93391573e091960d257fd9de120a.zip | |
openrisc: Add jump label support
Supported a complete jump_label implementation based on the ARM64 and
RV64 version and add the CONFIG_JUMP_LABEL=y to the defconfig.
Testing was conducted using a dedicated test module jump-label-test,
provided in the link below. For detailed steps, please refer to the
README also at the provided link.
Link: https://github.com/ChenMiaoi/GSoC-2025-Final-Report/tree/main/tests/jump-label-test
Test Environment:
- Hardware: QEMU emulated OR1K
- Kernel Version: 6.17.0-rc3-dirty
- Configs: CONFIG_MODULES=y,CONFIG_MODULE_UNLOAD=y
- Toolchain: or1k-none-linux-musl-gcc 15.1.0
Test Results:
$ insmod jump_label_test.ko
[ 32.590000] Jump label performance test module loaded
[ 35.250000] Normal branch time: 1241327150 ns (124 ns per iteration)
[ 35.250000] Jump label (false) time: 706422700 ns (70 ns per iteration)
[ 35.250000] Jump label (true) time: 708913450 ns (70 ns per iteration)
$ rmmod jump_label_test.ko
[ 72.210000] Jump label test module unloaded
The results show approximately 43% improvement in branch performance
when using jump labels compared to traditional branches.
Link: https://lore.kernel.org/openrisc/aLsZ9S3X0OpKy1RM@antec/T/#u
Signed-off-by: chenmiao <chenmiao.ku@gmail.com>
Signed-off-by: Stafford Horne <shorne@gmail.com>
Diffstat (limited to 'Documentation/features/core')
| -rw-r--r-- | Documentation/features/core/jump-labels/arch-support.txt | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/Documentation/features/core/jump-labels/arch-support.txt b/Documentation/features/core/jump-labels/arch-support.txt index ccada815569f..683de7c15058 100644 --- a/Documentation/features/core/jump-labels/arch-support.txt +++ b/Documentation/features/core/jump-labels/arch-support.txt @@ -17,7 +17,7 @@ | microblaze: | TODO | | mips: | ok | | nios2: | TODO | - | openrisc: | TODO | + | openrisc: | ok | | parisc: | ok | | powerpc: | ok | | riscv: | ok | |
