Skip to content

Optimize non-relaxed load/store on pre-v6 ARM Linux/Android#112

Open
taiki-e wants to merge 1 commit intomainfrom
arm-linux
Open

Optimize non-relaxed load/store on pre-v6 ARM Linux/Android#112
taiki-e wants to merge 1 commit intomainfrom
arm-linux

Conversation

@taiki-e
Copy link
Owner

@taiki-e taiki-e commented Jul 31, 2023

LLVM calls __sync_val_compare_and_swap_N/__sync_lock_test_and_set_N for them, but we can use ldr/str+__kuser_memory_barrier on Linux/Android.

This should also fix the problem that wide seqlock, which uses several acquire loads, is slower than spinlock on these targets. #82 (comment)

@taiki-e taiki-e added the O-arm Target: 32-bit Arm processors (armv6, armv7, thumb...), including 64-bit Arm in AArch32 state label Jul 31, 2023
@taiki-e taiki-e force-pushed the arm-linux branch 4 times, most recently from 0469e30 to 5b9bc15 Compare August 1, 2023 02:54
@taiki-e taiki-e force-pushed the main branch 2 times, most recently from ea83130 to 899352a Compare September 23, 2023 05:20
@taiki-e taiki-e force-pushed the arm-linux branch 2 times, most recently from 1d4e775 to 1d12abb Compare October 7, 2023 18:50
@taiki-e taiki-e force-pushed the arm-linux branch 2 times, most recently from 83b7d1c to b78d414 Compare January 3, 2024 18:13
@taiki-e taiki-e force-pushed the main branch 4 times, most recently from 5b5ecb8 to c9456c0 Compare March 9, 2024 12:29
@taiki-e taiki-e force-pushed the main branch 4 times, most recently from f16e67a to 4e66bd3 Compare April 21, 2024 10:15
@taiki-e taiki-e force-pushed the main branch 2 times, most recently from 5c72bf2 to 8cc76fa Compare September 14, 2025 19:42
@taiki-e taiki-e force-pushed the main branch 10 times, most recently from 7494fc0 to e6fd074 Compare December 30, 2025 11:29
@taiki-e taiki-e force-pushed the main branch 5 times, most recently from a91d29f to d6c284d Compare January 8, 2026 17:23
@taiki-e taiki-e force-pushed the main branch 3 times, most recently from 2713bb5 to 8fc9313 Compare January 15, 2026 10:31
@taiki-e taiki-e force-pushed the main branch 10 times, most recently from 7ddc1dc to 55454d2 Compare February 5, 2026 14:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

O-arm Target: 32-bit Arm processors (armv6, armv7, thumb...), including 64-bit Arm in AArch32 state

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant