瀏覽代碼

amdgpu/dc/dml: Support clang option for stack alignment

DML uses the compiler option -mpreferred-stack-boundary=4 to configure
a stack alignment of 16 bytes. Clang uses the option -mstack-alignment
instead, which expects as parameter the alignment in bytes, and not a
power of two like -mpreferred-stack-boundary.

Probe for both compiler options and use the correct one, similar to
what is done in arch/x86/Makefile.

Reported-by: Guenter Roeck <groeck@chromium.org>
Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Matthias Kaehlcke 7 年之前
父節點
當前提交
4769278e5c
共有 1 個文件被更改,包括 7 次插入1 次删除
  1. 7 1
      drivers/gpu/drm/amd/display/dc/dml/Makefile

+ 7 - 1
drivers/gpu/drm/amd/display/dc/dml/Makefile

@@ -24,7 +24,13 @@
 # It provides the general basic services required by other DAL
 # It provides the general basic services required by other DAL
 # subcomponents.
 # subcomponents.
 
 
-dml_ccflags := -mhard-float -msse -mpreferred-stack-boundary=4
+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
+
+dml_ccflags := -mhard-float -msse $(cc_stack_align)
 
 
 CFLAGS_display_mode_vba.o := $(dml_ccflags)
 CFLAGS_display_mode_vba.o := $(dml_ccflags)
 CFLAGS_display_mode_lib.o := $(dml_ccflags)
 CFLAGS_display_mode_lib.o := $(dml_ccflags)