Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

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 2 times, most recently from 3076fb9 to 79adf66 Compare September 8, 2024 07:03
@taiki-e taiki-e force-pushed the main branch 6 times, most recently from 023c526 to fc902d0 Compare September 20, 2024 12:53
@taiki-e taiki-e force-pushed the main branch 10 times, most recently from 51d5755 to a68d11b Compare October 4, 2024 21:07
@taiki-e taiki-e force-pushed the main branch 5 times, most recently from 6035b03 to 33b6cb5 Compare October 19, 2024 11:51
@taiki-e taiki-e force-pushed the main branch 3 times, most recently from c49dd72 to b4a720e Compare October 27, 2024 05:30
@taiki-e taiki-e force-pushed the main branch 3 times, most recently from 8813362 to 33ab2c1 Compare November 23, 2024 17:40
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