mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-07-05 10:48:29 +00:00
Avoid legacy instruction penalties on x86
This commit is contained in:
parent
1fba310e22
commit
8d8aecb6d9
16 changed files with 199 additions and 158 deletions
7
third_party/nsync/BUILD.mk
vendored
7
third_party/nsync/BUILD.mk
vendored
|
@ -56,6 +56,13 @@ $(THIRD_PARTY_NSYNC_A_OBJS): private \
|
|||
-Wframe-larger-than=4096 \
|
||||
-Walloca-larger-than=4096
|
||||
|
||||
# avoid the legacy sse decoding penalty on avx systems
|
||||
ifeq ($(MODE),)
|
||||
$(THIRD_PARTY_NSYNC_A_OBJS): private \
|
||||
COPTS += \
|
||||
-mgeneral-regs-only
|
||||
endif
|
||||
|
||||
# these assembly files are safe to build on aarch64
|
||||
o/$(MODE)/third_party/nsync/compat.o: third_party/nsync/compat.S
|
||||
@$(COMPILE) -AOBJECTIFY.S $(OBJECTIFY.S) $(OUTPUT_OPTION) -c $<
|
||||
|
|
7
third_party/nsync/mem/BUILD.mk
vendored
7
third_party/nsync/mem/BUILD.mk
vendored
|
@ -49,6 +49,13 @@ $(THIRD_PARTY_NSYNC_MEM_A_OBJS): private \
|
|||
-Wframe-larger-than=4096 \
|
||||
-Walloca-larger-than=4096
|
||||
|
||||
# avoid the legacy sse decoding penalty on avx systems
|
||||
ifeq ($(MODE),)
|
||||
$(THIRD_PARTY_NSYNC_MEM_A_OBJS): private \
|
||||
COPTS += \
|
||||
-mgeneral-regs-only
|
||||
endif
|
||||
|
||||
THIRD_PARTY_NSYNC_MEM_LIBS = $(foreach x,$(THIRD_PARTY_NSYNC_MEM_ARTIFACTS),$($(x)))
|
||||
THIRD_PARTY_NSYNC_MEM_SRCS = $(foreach x,$(THIRD_PARTY_NSYNC_MEM_ARTIFACTS),$($(x)_SRCS))
|
||||
THIRD_PARTY_NSYNC_MEM_CHECKS = $(foreach x,$(THIRD_PARTY_NSYNC_MEM_ARTIFACTS),$($(x)_CHECKS))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue