Skip to main content
ALT Linux Bugzilla
– Attachment 22370 Details for
Bug 60883
i586-glibc-core (p11): `memcpy`/`memmove`/`memset` без IFUNC (старый i586-код, читает приёмник): 32-битные игры в 6–9 раз медленнее, чем во Fedora/Flatpak
New bug
|
Search
|
[?]
|
Help
Register
|
Log In
[x]
|
Forgot Password
Login:
[x]
|
EN
|
RU
Исправленный исходник, проблема с FPS исчезает - проверено.
fastmemcpy.c (text/x-csrc), 1.49 KB, created by
mail
on 2026-10-09 10:09:17 MSK
(
hide
)
Description:
Исправленный исходник, проблема с FPS исчезает - проверено.
Filename:
MIME Type:
Creator:
mail
Created:
2026-10-09 10:09:17 MSK
Size:
1.49 KB
patch
obsolete
>/* ÐинималÑÐ½Ð°Ñ LD_PRELOAD-замена memcpy/memmove Ð´Ð»Ñ 32-биÑнÑÑ Ð¿ÑоÑеÑÑов (диагноÑÑика). > * > * ÐапиÑÑ Ð¸Ð´ÑÑ ÑеÑез "rep movsb" и пÑиÑмник пеÑед запиÑÑÑ Ð½Ðµ ÑиÑаеÑÑÑ. > * ÐÑименена, ÑÑÐ¾Ð±Ñ Ð¿Ð¾ÐºÐ°Ð·Ð°ÑÑ: замена ÑолÑко memcpy/memmove на наÑивной ALT p11 > * (i586-glibc-core 2.38.0.223.f053ff-alt1.p11.1) возвÑаÑÐ°ÐµÑ FPS наÑивной > * Half-Life 2 Ñ 20-30 до 180 в "ÑÑжÑлой" ÑÑене, без дÑÑÐ³Ð¸Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ð¹. > * ÐÑо не иÑпÑавление glibc и не опÑимизиÑÐ¾Ð²Ð°Ð½Ð½Ð°Ñ ÑеализаÑÐ¸Ñ (Ð½ÐµÑ memset и дÑ.). > * > * СбоÑка: > * gcc -m32 -O2 -shared -fPIC -fno-builtin -fno-tree-loop-distribute-patterns \ > * -fno-stack-protector -o libfastmemcpy.so fastmemcpy.c > * ÐÑполÑзование (паÑамеÑÑÑ Ð·Ð°Ð¿ÑÑка Steam-игÑÑ): > * LD_PRELOAD=/пÑÑÑ/libfastmemcpy.so %command% > */ >#include <stddef.h> > >void *memcpy(void *restrict d, const void *restrict s, size_t n) { > void *r = d; > __asm__ volatile("cld; rep movsb" : "+D"(d), "+S"(s), "+c"(n) : : "memory"); > return r; >} > >void *memmove(void *d, const void *s, size_t n) { > unsigned char *dd = d; const unsigned char *ss = s; > if (dd <= ss || dd >= ss + n) { return memcpy(d, s, n); } > while (n >= 4) { n -= 4; *(unsigned int *)(dd + n) = *(const unsigned int *)(ss + n); } > while (n) { n--; dd[n] = ss[n]; } > return d; >}
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 60883
: 22370 |
22376