Module Name: src Committed By: skrll Date: Wed Aug 12 12:59:57 UTC 2020
Modified Files: src/common/lib/libc/arch/aarch64/atomic: atomic_cas_16.S atomic_cas_32.S atomic_cas_64.S atomic_cas_8.S atomic_dec_32.S atomic_dec_64.S atomic_inc_32.S atomic_inc_64.S atomic_nand_16.S atomic_nand_32.S atomic_nand_64.S atomic_nand_8.S atomic_swap_16.S atomic_swap_32.S atomic_swap_64.S atomic_swap_8.S Log Message: Part I of ad@'s performance improvements for aarch64 - Remove memory barriers from the atomic ops. I don't understand why those are there. Is it some architectural thing, or for a CPU bug, or just over-caution maybe? They're not needed for correctness. - Have unlikely conditional branches go forwards to help the static branch predictor. To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 \ src/common/lib/libc/arch/aarch64/atomic/atomic_cas_16.S \ src/common/lib/libc/arch/aarch64/atomic/atomic_cas_32.S \ src/common/lib/libc/arch/aarch64/atomic/atomic_cas_8.S \ src/common/lib/libc/arch/aarch64/atomic/atomic_dec_32.S \ src/common/lib/libc/arch/aarch64/atomic/atomic_dec_64.S \ src/common/lib/libc/arch/aarch64/atomic/atomic_inc_32.S \ src/common/lib/libc/arch/aarch64/atomic/atomic_inc_64.S \ src/common/lib/libc/arch/aarch64/atomic/atomic_nand_16.S \ src/common/lib/libc/arch/aarch64/atomic/atomic_nand_32.S \ src/common/lib/libc/arch/aarch64/atomic/atomic_nand_64.S \ src/common/lib/libc/arch/aarch64/atomic/atomic_nand_8.S \ src/common/lib/libc/arch/aarch64/atomic/atomic_swap_16.S \ src/common/lib/libc/arch/aarch64/atomic/atomic_swap_32.S \ src/common/lib/libc/arch/aarch64/atomic/atomic_swap_64.S \ src/common/lib/libc/arch/aarch64/atomic/atomic_swap_8.S cvs rdiff -u -r1.3 -r1.4 \ src/common/lib/libc/arch/aarch64/atomic/atomic_cas_64.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.