Rate This Document
Findability
Accuracy
Completeness
Readability

Specifying stringlib

The memcpy and memmove functions are often used to copy memory in the C standard library. BiSheng compiler implements a vectorized version with high performance for Arm processors.

Use the neon version.

1
2
clang -O3 -Wl,--defsym,memcpy=__memcpy_aarch64_simd -Wl,-Bstatic -lstringlib -Wl,-Bdynamic
clang -O3 -Wl,--defsym,memmove=__memmove_aarch64_simd -Wl,-Bstatic -lstringlib -Wl,-Bdynamic

Uses the sve version.

1
2
clang -O3 -Wl,--defsym,memcpy=__memcpy_aarch64_sve -Wl,-Bstatic -lstringlib -Wl,-Bdynamic
clang -O3 -Wl,--defsym,memmove=__memmove_aarch64_sve -Wl,-Bstatic -lstringlib -Wl,-Bdynamic

The dynamic link library file of stringlib is stored in BiShengCompiler-5.1.0.2-aarch64-linux/lib.