mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/
synced 2026-04-17 22:23:45 -04:00
arch/x86/Makefile disables SSE and SSE2 for the whole kernel. The AMDGPU drivers modified in this patch re-enable SSE but not SSE2. Turn on SSE2 to support emitting double precision floating point instructions rather than calls to non-existent (usually available from gcc_s or compiler_rt) floating point helper routines for Clang. This was originally landed in: commit1011745073("drm/amd/display: add -msse2 to prevent Clang from emitting libcalls to undefined SW FP routines") but reverted in: commit193392ed9f("Revert "drm/amd/display: add -msse2 to prevent Clang from emitting libcalls to undefined SW FP routines"") due to bugreports from GCC builds. Add guards to only do so for Clang. Link: https://bugs.freedesktop.org/show_bug.cgi?id=109487 Link: https://github.com/ClangBuiltLinux/linux/issues/327 Suggested-by: Sedat Dilek <sedat.dilek@gmail.com> Suggested-by: Sami Tolvanen <samitolvanen@google.com> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
52 lines
1.9 KiB
Makefile
52 lines
1.9 KiB
Makefile
#
|
|
# Copyright 2017 Advanced Micro Devices, Inc.
|
|
#
|
|
# Permission is hereby granted, free of charge, to any person obtaining a
|
|
# copy of this software and associated documentation files (the "Software"),
|
|
# to deal in the Software without restriction, including without limitation
|
|
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
|
# and/or sell copies of the Software, and to permit persons to whom the
|
|
# Software is furnished to do so, subject to the following conditions:
|
|
#
|
|
# The above copyright notice and this permission notice shall be included in
|
|
# all copies or substantial portions of the Software.
|
|
#
|
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
|
# THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
|
# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
|
# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
# OTHER DEALINGS IN THE SOFTWARE.
|
|
#
|
|
#
|
|
# Makefile for the 'calcs' sub-component of DAL.
|
|
# It calculates Bandwidth and Watermarks values for HW programming
|
|
#
|
|
|
|
ifneq ($(call cc-option, -mpreferred-stack-boundary=4),)
|
|
cc_stack_align := -mpreferred-stack-boundary=4
|
|
else ifneq ($(call cc-option, -mstack-alignment=16),)
|
|
cc_stack_align := -mstack-alignment=16
|
|
endif
|
|
|
|
calcs_ccflags := -mhard-float -msse $(cc_stack_align)
|
|
|
|
ifdef CONFIG_CC_IS_CLANG
|
|
calcs_ccflags += -msse2
|
|
endif
|
|
|
|
CFLAGS_dcn_calcs.o := $(calcs_ccflags)
|
|
CFLAGS_dcn_calc_auto.o := $(calcs_ccflags)
|
|
CFLAGS_dcn_calc_math.o := $(calcs_ccflags) -Wno-tautological-compare
|
|
|
|
BW_CALCS = dce_calcs.o bw_fixed.o custom_float.o
|
|
|
|
ifdef CONFIG_DRM_AMD_DC_DCN1_0
|
|
BW_CALCS += dcn_calcs.o dcn_calc_math.o dcn_calc_auto.o
|
|
endif
|
|
|
|
AMD_DAL_BW_CALCS = $(addprefix $(AMDDALPATH)/dc/calcs/,$(BW_CALCS))
|
|
|
|
AMD_DISPLAY_FILES += $(AMD_DAL_BW_CALCS)
|