[Mesa-stable] [Mesa-dev] [PATCH v5] intel: compiler option msse2 and mstackrealign

Sergii Romantsov sergii.romantsov at globallogic.com
Fri Sep 7 13:22:57 UTC 2018


Oh, thanks.
So maybe that one https://patchwork.freedesktop.org/patch/247572/ one more
time :)?
And this https://patchwork.freedesktop.org/patch/247729/ ?

On Fri, Sep 7, 2018 at 3:46 PM, Lionel Landwerlin <
lionel.g.landwerlin at intel.com> wrote:

> It's good, pushed.
>
> On 07/09/2018 10:57, Lionel Landwerlin wrote:
>
> There was a test that failed, but I think it might be flakyness.
> I'm retrying one more time. Will get back to you in ~1h.
>
> -
> Lionel
>
> On 07/09/2018 10:32, Sergii Romantsov wrote:
>
> Hello, Lionel.
> Any regression with CI?
>
> On Thu, Sep 6, 2018 at 12:33 PM, Lionel Landwerlin <
> lionel.g.landwerlin at intel.com> wrote:
>
>> Giving it a run through CI and I'll push after.
>>
>> Thanks!
>>
>>
>> On 06/09/2018 09:07, Sergii Romantsov wrote:
>>
>>> Seems in case of 32-bit library, usage of msse2 makes
>>> some stack corruption or incorrect instructions.
>>> Usage with mstackrealign fixes that case.
>>>
>>> v2: Fixed meson.
>>>
>>> v3: Definition of c_sse2_args moved on the top (L.Landwerlin).
>>>      Added mstackrealign for Android's mks where msee4.1 is used.
>>>
>>> v4: Added for Vulkan also.
>>>
>>> v5: Commit message correction.
>>>
>>> CC: <mesa-stable at lists.freedesktop.org>
>>> Fixes: 6b05c080f202 (i965: Compile with -msse3)
>>> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=107779
>>> Signed-off-by: Sergii Romantsov <sergii.romantsov at globallogic.com>
>>> Reviewed-by: Dylan Baker <dylan at pnwbakers.com>
>>> Reviewed-by: Emil Velikov <emil.velikov at collabora.com>
>>> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
>>> ---
>>>   src/intel/Makefile.vulkan.am          | 2 +-
>>>   src/intel/meson.build                 | 1 +
>>>   src/intel/vulkan/meson.build          | 4 ++--
>>>   src/mesa/Android.libmesa_dricore.mk   | 2 +-
>>>   src/mesa/Android.libmesa_sse41.mk     | 2 +-
>>>   src/mesa/drivers/dri/i965/Makefile.am | 2 +-
>>>   src/mesa/drivers/dri/i965/meson.build | 6 +++---
>>>   7 files changed, 10 insertions(+), 9 deletions(-)
>>>
>>> diff --git a/src/intel/Makefile.vulkan.am b/src/intel/Makefile.vulkan.am
>>> index 9555d98..d511263 100644
>>> --- a/src/intel/Makefile.vulkan.am
>>> +++ b/src/intel/Makefile.vulkan.am
>>> @@ -104,7 +104,7 @@ noinst_LTLIBRARIES += $(VULKAN_PER_GEN_LIBS)
>>>     VULKAN_CFLAGS = \
>>>         $(AM_CFLAGS) \
>>> -       -msse2
>>> +       -msse2 -mstackrealign
>>>     VULKAN_CPPFLAGS = \
>>>         -I$(top_srcdir)/src/compiler \
>>> diff --git a/src/intel/meson.build b/src/intel/meson.build
>>> index b3dcbdc..3c57e79 100644
>>> --- a/src/intel/meson.build
>>> +++ b/src/intel/meson.build
>>> @@ -18,6 +18,7 @@
>>>   # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
>>> DEALINGS IN THE
>>>   # SOFTWARE.
>>>   +c_sse2_args = ['-msse2', '-mstackrealign']
>>>   inc_intel = include_directories('.')
>>>     subdir('blorp')
>>> diff --git a/src/intel/vulkan/meson.build b/src/intel/vulkan/meson.build
>>> index e11bcb0..f1beb1d 100644
>>> --- a/src/intel/vulkan/meson.build
>>> +++ b/src/intel/vulkan/meson.build
>>> @@ -102,7 +102,7 @@ foreach g : [['70', ['gen7_cmd_buffer.c']], ['75',
>>> ['gen7_cmd_buffer.c']],
>>>         inc_vulkan_wsi,
>>>       ],
>>>       c_args : [
>>> -      c_vis_args, no_override_init_args, '-msse2',
>>> +      c_vis_args, no_override_init_args, c_sse2_args,
>>>         '-DGEN_VERSIONx10=@0@'.format(_gen),
>>>       ],
>>>       dependencies : [dep_libdrm, dep_valgrind, idep_nir_headers],
>>> @@ -146,7 +146,7 @@ anv_deps = [
>>>   anv_flags = [
>>>     c_vis_args,
>>>     no_override_init_args,
>>> -  '-msse2',
>>> +  c_sse2_args,
>>>   ]
>>>     if with_platform_x11
>>> diff --git a/src/mesa/Android.libmesa_dricore.mk b/src/mesa/
>>> Android.libmesa_dricore.mk
>>> index 34fd858..7921177 100644
>>> --- a/src/mesa/Android.libmesa_dricore.mk
>>> +++ b/src/mesa/Android.libmesa_dricore.mk
>>> @@ -49,7 +49,7 @@ ifeq ($(ARCH_X86_HAVE_SSE4_1),true)
>>>   LOCAL_WHOLE_STATIC_LIBRARIES := \
>>>         libmesa_sse41
>>>   LOCAL_CFLAGS := \
>>> -       -msse4.1 \
>>> +       -msse4.1 -mstackrealign \
>>>          -DUSE_SSE41
>>>   endif
>>>   diff --git a/src/mesa/Android.libmesa_sse41.mk b/src/mesa/
>>> Android.libmesa_sse41.mk
>>> index da40f43..de19a1f 100644
>>> --- a/src/mesa/Android.libmesa_sse41.mk
>>> +++ b/src/mesa/Android.libmesa_sse41.mk
>>> @@ -34,7 +34,7 @@ LOCAL_SRC_FILES += \
>>>         $(X86_SSE41_FILES)
>>>     LOCAL_CFLAGS := \
>>> -       -msse4.1
>>> +       -msse4.1 -mstackrealign
>>>     LOCAL_C_INCLUDES := \
>>>         $(MESA_TOP)/src/mapi \
>>> diff --git a/src/mesa/drivers/dri/i965/Makefile.am
>>> b/src/mesa/drivers/dri/i965/Makefile.am
>>> index 889d4c6..0afa7a2 100644
>>> --- a/src/mesa/drivers/dri/i965/Makefile.am
>>> +++ b/src/mesa/drivers/dri/i965/Makefile.am
>>> @@ -44,7 +44,7 @@ AM_CFLAGS = \
>>>         $(WNO_OVERRIDE_INIT) \
>>>         $(LIBDRM_CFLAGS) \
>>>         $(VALGRIND_CFLAGS) \
>>> -       -msse2
>>> +       -msse2 -mstackrealign
>>>     AM_CXXFLAGS = $(AM_CFLAGS)
>>>   diff --git a/src/mesa/drivers/dri/i965/meson.build
>>> b/src/mesa/drivers/dri/i965/meson.build
>>> index 6c94f4a..b95e2d7 100644
>>> --- a/src/mesa/drivers/dri/i965/meson.build
>>> +++ b/src/mesa/drivers/dri/i965/meson.build
>>> @@ -142,7 +142,7 @@ foreach v : ['40', '45', '50', '60', '70', '75',
>>> '80', '90', '100', '110']
>>>       ['genX_blorp_exec.c', 'genX_state_upload.c', gen_xml_pack],
>>>       include_directories : [inc_common, inc_intel, inc_dri_common],
>>>       c_args : [
>>> -      c_vis_args, no_override_init_args, '-msse2',
>>> +      c_vis_args, no_override_init_args, c_sse2_args,
>>>         '-DGEN_VERSIONx10=@0@'.format(v),
>>>       ],
>>>       dependencies : [dep_libdrm, idep_nir_headers],
>>> @@ -183,8 +183,8 @@ libi965 = static_library(
>>>     include_directories : [
>>>       inc_common, inc_intel, inc_dri_common, inc_util, inc_drm_uapi,
>>>     ],
>>> -  c_args : [c_vis_args, no_override_init_args, '-msse2'],
>>> -  cpp_args : [cpp_vis_args, '-msse2'],
>>> +  c_args : [c_vis_args, no_override_init_args, c_sse2_args],
>>> +  cpp_args : [cpp_vis_args, c_sse2_args],
>>>     link_with : [
>>>       i965_gen_libs, libintel_common, libintel_dev, libisl,
>>> libintel_compiler,
>>>       libblorp,
>>>
>>
>>
>> _______________________________________________
>> mesa-dev mailing list
>> mesa-dev at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>>
>
>
>
> --
> Sergii Romantsov
> GlobalLogic Inc.
> www.globallogic.com
>
> _______________________________________________
> mesa-dev mailing listmesa-dev at lists.freedesktop.orghttps://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
>
>
> _______________________________________________
> mesa-dev mailing listmesa-dev at lists.freedesktop.orghttps://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
>
>


-- 
Sergii Romantsov
GlobalLogic Inc.
www.globallogic.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-stable/attachments/20180907/26cc8aec/attachment-0001.html>


More information about the mesa-stable mailing list