<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="Generator" content="Microsoft Word 14 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:"Helvetica Neue";
        panose-1:0 0 0 0 0 0 0 0 0 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {mso-style-priority:99;
        mso-style-link:"Balloon Text Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:"Tahoma","sans-serif";}
span.BalloonTextChar
        {mso-style-name:"Balloon Text Char";
        mso-style-priority:99;
        mso-style-link:"Balloon Text";
        font-family:"Tahoma","sans-serif";}
span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style></head><body lang="EN-US" link="blue" vlink="purple"><div class="WordSection1"><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">It’s too early to answer this question.  Please be patient.</span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> </span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Thanks,</span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Tom</span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"> </span></p><div><div style="border:none;border-top:solid #b5c4df 1.0pt;padding:3.0pt 0in 0in 0in"><p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> x265-devel [mailto:<a href="mailto:x265-devel-bounces@videolan.org">x265-devel-bounces@videolan.org</a>] <b>On Behalf Of </b>chekib nouira<br><b>Sent:</b> Tuesday, November 21, 2017 10:20 AM<br><b>To:</b> Development for x265; Andrey Semashev<br><b>Subject:</b> Re: [x265] [PATCH 2 of 2] x86: Change assembler from YASM to NASM</span></p></div></div><p class="MsoNormal"> </p><div><div><p class="MsoNormal"><span style="font-family:"Helvetica Neue","serif"">speaking about AVX512, what's the speed up it is offering as compared to AVX2?</span></p></div><div><p class="MsoNormal"><span style="font-family:"Helvetica Neue","serif""> </span></p></div><div><p class="MsoNormal"><span style="font-family:"Helvetica Neue","serif"">thx</span></p></div><div><p class="MsoNormal"><span style="font-family:"Helvetica Neue","serif"">--Chekib</span></p></div><div><p class="MsoNormal"><span style="font-family:"Helvetica Neue","serif""> </span></p></div><div id="ydpb047803yahoo_quoted_1569157963"><div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">Le mardi 21 novembre 2017 à 04:49:30 UTC−8, Andrey Semashev <<a href="mailto:andrey.semashev@gmail.com">andrey.semashev@gmail.com</a>> a écrit : </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a"> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a"> </span></p></div><div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">On 11/21/17 15:25, Sean McGovern wrote:</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> Hi,</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> Is this really necessary?</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> Ubuntu 16.04 Xenial Xerus only ships with nasm 2.11.08.</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a"> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">yasm does not support AVX-512 and has very low activity recently[1]. </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">nasm supports AVX-512 since 2.13[2]. Even if x265 does not use AVX-512 </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">currently, this is the right way forward in the long run. It may be </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">possible to reduce the minimum required nasm version though, until </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">AVX-512 support is added.</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a"> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">BTW, x264 and ffmpeg made a similar move recently.</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a"> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">[1]: <a href="https://github.com/yasm/yasm/commits/master" target="_blank">https://github.com/yasm/yasm/commits/master</a></span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">[2]: <a href="http://www.nasm.us/doc/nasmdocc.html" target="_blank">http://www.nasm.us/doc/nasmdocc.html</a></span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a"> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>    Original Message</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> From: <a href="mailto:vignesh@multicorewareinc.com" target="_blank">vignesh@multicorewareinc.com</a></span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> Sent: November 21, 2017 12:07 AM</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> To: <a href="mailto:x265-devel@videolan.org" target="_blank">x265-devel@videolan.org</a></span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> Reply-to: <a href="mailto:x265-devel@videolan.org" target="_blank">x265-devel@videolan.org</a></span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> Subject: [x265] [PATCH 2 of 2] x86: Change assembler from YASM to NASM</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> # HG changeset patch</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> # User Vignesh Vijayakumar<<a href="mailto:vignesh@multicorewareinc.com" target="_blank">vignesh@multicorewareinc.com</a>></span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> # Date 1509595841 -19800</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> #      Thu Nov 02 09:40:41 2017 +0530</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> # Node ID 16ea92bf3627c6de43d583554df294dbbfd8fa8a</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> # Parent  182bfd0d5af929a801a08b35ee863d79eadb2833</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> x86: Change assembler from YASM to NASM</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> Supports NASM versions 2.13 and greater</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> diff -r 182bfd0d5af9 -r 16ea92bf3627 source/CMakeLists.txt</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> --- a/source/CMakeLists.txt    Thu Nov 02 09:39:58 2017 +0530</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +++ b/source/CMakeLists.txt    Thu Nov 02 09:40:41 2017 +0530</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -323,15 +323,15 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       execute_process(COMMAND ${CMAKE_CXX_COMPILER} -dumpversion OUTPUT_VARIABLE CC_VERSION)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> endif(GCC)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -find_package(Yasm)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +find_package(Nasm)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> if(ARM OR CROSS_COMPILE_ARM)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       option(ENABLE_ASSEMBLY "Enable use of assembly coded primitives" ON)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -elseif(YASM_FOUND AND X86)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    if (YASM_VERSION_STRING VERSION_LESS "1.2.0")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        message(STATUS "Yasm version ${YASM_VERSION_STRING} is too old. 1.2.0 or later required")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +elseif(NASM_FOUND AND X86)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    if (NASM_VERSION_STRING VERSION_LESS "2.13.0")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        message(STATUS "Nasm version ${NASM_VERSION_STRING} is too old. 2.13.0 or later required")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>           option(ENABLE_ASSEMBLY "Enable use of assembly coded primitives" OFF)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       else()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        message(STATUS "Found Yasm ${YASM_VERSION_STRING} to build assembly primitives")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        message(STATUS "Found Nasm ${NASM_VERSION_STRING} to build assembly primitives")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>           option(ENABLE_ASSEMBLY "Enable use of assembly coded primitives" ON)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> else()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -517,18 +517,18 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>               list(APPEND ASM_OBJS ${ASM}.${SUFFIX})</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>               add_custom_command(</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>                   OUTPUT ${ASM}.${SUFFIX}</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -                COMMAND ${YASM_EXECUTABLE} ARGS ${YASM_FLAGS} ${ASM_SRC} -o ${ASM}.${SUFFIX}</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +                COMMAND ${NASM_EXECUTABLE} ARGS ${NASM_FLAGS} ${ASM_SRC} -o ${ASM}.${SUFFIX}</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>                   DEPENDS ${ASM_SRC})</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>           endforeach()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> source_group(ASM FILES ${ASM_SRCS})</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> if(ENABLE_HDR10_PLUS)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    add_library(x265-static STATIC $<TARGET_OBJECTS:encoder> $<TARGET_OBJECTS:common> $<TARGET_OBJECTS:dynamicHDR10> ${ASM_OBJS} ${ASM_SRCS})</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    add_library(x265-static STATIC $<TARGET_OBJECTS:encoder> $<TARGET_OBJECTS:common> $<TARGET_OBJECTS:dynamicHDR10> ${ASM_OBJS})</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       add_library(hdr10plus-static STATIC $<TARGET_OBJECTS:dynamicHDR10>)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       set_target_properties(hdr10plus-static PROPERTIES OUTPUT_NAME hdr10plus)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> else()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    add_library(x265-static STATIC $<TARGET_OBJECTS:encoder> $<TARGET_OBJECTS:common> ${ASM_OBJS} ${ASM_SRCS})</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    add_library(x265-static STATIC $<TARGET_OBJECTS:encoder> $<TARGET_OBJECTS:common> ${ASM_OBJS})</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> if(NOT MSVC)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       set_target_properties(x265-static PROPERTIES OUTPUT_NAME x265)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -686,11 +686,11 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>           if(ENABLE_HDR10_PLUS)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>           add_executable(cli ../COPYING ${InputFiles} ${OutputFiles} ${GETOPT}</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>                           x265.cpp x265.h x265cli.h</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -                        $<TARGET_OBJECTS:encoder> $<TARGET_OBJECTS:common> $<TARGET_OBJECTS:dynamicHDR10> ${ASM_OBJS} ${ASM_SRCS})</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +                        $<TARGET_OBJECTS:encoder> $<TARGET_OBJECTS:common> $<TARGET_OBJECTS:dynamicHDR10> ${ASM_OBJS})</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>           else()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>               add_executable(cli ../COPYING ${InputFiles} ${OutputFiles} ${GETOPT}</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>                           x265.cpp x265.h x265cli.h</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -                        $<TARGET_OBJECTS:encoder> $<TARGET_OBJECTS:common> ${ASM_OBJS} ${ASM_SRCS})</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +                        $<TARGET_OBJECTS:encoder> $<TARGET_OBJECTS:common> ${ASM_OBJS})</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>           endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       else()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>           add_executable(cli ../COPYING ${InputFiles} ${OutputFiles} ${GETOPT} ${X265_RC_FILE}</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> diff -r 182bfd0d5af9 -r 16ea92bf3627 source/cmake/CMakeASM_NASMInformation.cmake</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> --- /dev/null    Thu Jan 01 00:00:00 1970 +0000</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +++ b/source/cmake/CMakeASM_NASMInformation.cmake    Thu Nov 02 09:40:41 2017 +0530</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -0,0 +1,68 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +set(ASM_DIALECT "_NASM")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +set(CMAKE_ASM${ASM_DIALECT}_SOURCE_FILE_EXTENSIONS asm)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +if(X64)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    list(APPEND ASM_FLAGS -DARCH_X86_64=1 -I ${CMAKE_CURRENT_SOURCE_DIR}/../common/x86/)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    if(ENABLE_PIC)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        list(APPEND ASM_FLAGS -DPIC)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    if(APPLE)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        set(ARGS -f macho64 -DPREFIX)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    elseif(UNIX AND NOT CYGWIN)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        set(ARGS -f elf64)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    else()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        set(ARGS -f win64)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +else()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    list(APPEND ASM_FLAGS -DARCH_X86_64=0 -I ${CMAKE_CURRENT_SOURCE_DIR}/../common/x86/)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    if(APPLE)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        set(ARGS -f macho32 -DPREFIX)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    elseif(UNIX AND NOT CYGWIN)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        set(ARGS -f elf32)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    else()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        set(ARGS -f win32 -DPREFIX)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +if(GCC)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    list(APPEND ASM_FLAGS -DHAVE_ALIGNED_STACK=1)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +else()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    list(APPEND ASM_FLAGS -DHAVE_ALIGNED_STACK=0)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +if(HIGH_BIT_DEPTH)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    if(MAIN12)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        list(APPEND ASM_FLAGS -DHIGH_BIT_DEPTH=1 -DBIT_DEPTH=12 -DX265_NS=${X265_NS})</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    else()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        list(APPEND ASM_FLAGS -DHIGH_BIT_DEPTH=1 -DBIT_DEPTH=10 -DX265_NS=${X265_NS})</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +else()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    list(APPEND ASM_FLAGS -DHIGH_BIT_DEPTH=0 -DBIT_DEPTH=8 -DX265_NS=${X265_NS})</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +list(APPEND ASM_FLAGS "${CMAKE_ASM_NASM_FLAGS}")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +if(CMAKE_BUILD_TYPE MATCHES Release)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    list(APPEND ASM_FLAGS "${CMAKE_ASM_NASM_FLAGS_RELEASE}")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +elseif(CMAKE_BUILD_TYPE MATCHES Debug)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    list(APPEND ASM_FLAGS "${CMAKE_ASM_NASM_FLAGS_DEBUG}")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +elseif(CMAKE_BUILD_TYPE MATCHES MinSizeRel)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    list(APPEND ASM_FLAGS "${CMAKE_ASM_NASM_FLAGS_MINSIZEREL}")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +elseif(CMAKE_BUILD_TYPE MATCHES RelWithDebInfo)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    list(APPEND ASM_FLAGS "${CMAKE_ASM_NASM_FLAGS_RELWITHDEBINFO}")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +set(NASM_FLAGS ${ARGS} ${ASM_FLAGS} PARENT_SCOPE)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +string(REPLACE ";" " " CMAKE_ASM_NASM_COMPILER_ARG1 "${ARGS}")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +# This section exists to override the one in CMakeASMInformation.cmake</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +# (the default Information file). This removes the <FLAGS></span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +# thing so that your C compiler flags that have been set via</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +# set_target_properties don't get passed to nasm and confuse it.</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +if(NOT CMAKE_ASM${ASM_DIALECT}_COMPILE_OBJECT)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    string(REPLACE ";" " " STR_ASM_FLAGS "${ASM_FLAGS}")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    set(CMAKE_ASM${ASM_DIALECT}_COMPILE_OBJECT "<CMAKE_ASM${ASM_DIALECT}_COMPILER> ${STR_ASM_FLAGS} -o <OBJECT> <SOURCE>")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +include(CMakeASMInformation)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +set(ASM_DIALECT)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> diff -r 182bfd0d5af9 -r 16ea92bf3627 source/cmake/CMakeASM_YASMInformation.cmake</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> --- a/source/cmake/CMakeASM_YASMInformation.cmake    Thu Nov 02 09:39:58 2017 +0530</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +++ /dev/null    Thu Jan 01 00:00:00 1970 +0000</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -1,68 +0,0 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -set(ASM_DIALECT "_YASM")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -set(CMAKE_ASM${ASM_DIALECT}_SOURCE_FILE_EXTENSIONS asm)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -if(X64)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    list(APPEND ASM_FLAGS -DARCH_X86_64=1)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    if(ENABLE_PIC)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        list(APPEND ASM_FLAGS -DPIC)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    if(APPLE)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        set(ARGS -f macho64 -m amd64 -DPREFIX)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    elseif(UNIX AND NOT CYGWIN)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        set(ARGS -f elf64 -m amd64)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    else()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        set(ARGS -f win64 -m amd64)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -else()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    list(APPEND ASM_FLAGS -DARCH_X86_64=0)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    if(APPLE)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        set(ARGS -f macho -DPREFIX)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    elseif(UNIX AND NOT CYGWIN)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        set(ARGS -f elf32)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    else()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        set(ARGS -f win32 -DPREFIX)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -if(GCC)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    list(APPEND ASM_FLAGS -DHAVE_ALIGNED_STACK=1)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -else()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    list(APPEND ASM_FLAGS -DHAVE_ALIGNED_STACK=0)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -if(HIGH_BIT_DEPTH)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    if(MAIN12)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        list(APPEND ASM_FLAGS -DHIGH_BIT_DEPTH=1 -DBIT_DEPTH=12 -DX265_NS=${X265_NS})</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    else()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        list(APPEND ASM_FLAGS -DHIGH_BIT_DEPTH=1 -DBIT_DEPTH=10 -DX265_NS=${X265_NS})</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -else()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    list(APPEND ASM_FLAGS -DHIGH_BIT_DEPTH=0 -DBIT_DEPTH=8 -DX265_NS=${X265_NS})</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -list(APPEND ASM_FLAGS "${CMAKE_ASM_YASM_FLAGS}")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -if(CMAKE_BUILD_TYPE MATCHES Release)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    list(APPEND ASM_FLAGS "${CMAKE_ASM_YASM_FLAGS_RELEASE}")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -elseif(CMAKE_BUILD_TYPE MATCHES Debug)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    list(APPEND ASM_FLAGS "${CMAKE_ASM_YASM_FLAGS_DEBUG}")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -elseif(CMAKE_BUILD_TYPE MATCHES MinSizeRel)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    list(APPEND ASM_FLAGS "${CMAKE_ASM_YASM_FLAGS_MINSIZEREL}")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -elseif(CMAKE_BUILD_TYPE MATCHES RelWithDebInfo)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    list(APPEND ASM_FLAGS "${CMAKE_ASM_YASM_FLAGS_RELWITHDEBINFO}")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -set(YASM_FLAGS ${ARGS} ${ASM_FLAGS} PARENT_SCOPE)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -string(REPLACE ";" " " CMAKE_ASM_YASM_COMPILER_ARG1 "${ARGS}")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -# This section exists to override the one in CMakeASMInformation.cmake</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -# (the default Information file). This removes the <FLAGS></span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -# thing so that your C compiler flags that have been set via</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -# set_target_properties don't get passed to yasm and confuse it.</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -if(NOT CMAKE_ASM${ASM_DIALECT}_COMPILE_OBJECT)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    string(REPLACE ";" " " STR_ASM_FLAGS "${ASM_FLAGS}")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    set(CMAKE_ASM${ASM_DIALECT}_COMPILE_OBJECT "<CMAKE_ASM${ASM_DIALECT}_COMPILER> ${STR_ASM_FLAGS} -o <OBJECT> <SOURCE>")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -include(CMakeASMInformation)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -set(ASM_DIALECT)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> diff -r 182bfd0d5af9 -r 16ea92bf3627 source/cmake/CMakeDetermineASM_NASMCompiler.cmake</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> --- /dev/null    Thu Jan 01 00:00:00 1970 +0000</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +++ b/source/cmake/CMakeDetermineASM_NASMCompiler.cmake    Thu Nov 02 09:40:41 2017 +0530</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -0,0 +1,5 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +set(ASM_DIALECT "_NASM")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +set(CMAKE_ASM${ASM_DIALECT}_COMPILER ${NASM_EXECUTABLE})</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +set(CMAKE_ASM${ASM_DIALECT}_COMPILER_INIT ${_CMAKE_TOOLCHAIN_PREFIX}nasm)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +include(CMakeDetermineASMCompiler)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +set(ASM_DIALECT)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> diff -r 182bfd0d5af9 -r 16ea92bf3627 source/cmake/CMakeDetermineASM_YASMCompiler.cmake</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> --- a/source/cmake/CMakeDetermineASM_YASMCompiler.cmake    Thu Nov 02 09:39:58 2017 +0530</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +++ /dev/null    Thu Jan 01 00:00:00 1970 +0000</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -1,5 +0,0 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -set(ASM_DIALECT "_YASM")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -set(CMAKE_ASM${ASM_DIALECT}_COMPILER ${YASM_EXECUTABLE})</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -set(CMAKE_ASM${ASM_DIALECT}_COMPILER_INIT ${_CMAKE_TOOLCHAIN_PREFIX}yasm)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -include(CMakeDetermineASMCompiler)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -set(ASM_DIALECT)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> diff -r 182bfd0d5af9 -r 16ea92bf3627 source/cmake/CMakeTestASM_NASMCompiler.cmake</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> --- /dev/null    Thu Jan 01 00:00:00 1970 +0000</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +++ b/source/cmake/CMakeTestASM_NASMCompiler.cmake    Thu Nov 02 09:40:41 2017 +0530</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -0,0 +1,3 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +set(ASM_DIALECT "_NASM")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +include(CMakeTestASMCompiler)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +set(ASM_DIALECT)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> diff -r 182bfd0d5af9 -r 16ea92bf3627 source/cmake/CMakeTestASM_YASMCompiler.cmake</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> --- a/source/cmake/CMakeTestASM_YASMCompiler.cmake    Thu Nov 02 09:39:58 2017 +0530</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +++ /dev/null    Thu Jan 01 00:00:00 1970 +0000</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -1,3 +0,0 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -set(ASM_DIALECT "_YASM")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -include(CMakeTestASMCompiler)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -set(ASM_DIALECT)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> diff -r 182bfd0d5af9 -r 16ea92bf3627 source/cmake/FindNasm.cmake</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> --- /dev/null    Thu Jan 01 00:00:00 1970 +0000</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +++ b/source/cmake/FindNasm.cmake    Thu Nov 02 09:40:41 2017 +0530</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -0,0 +1,25 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +include(FindPackageHandleStandardArgs)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +# Simple path search with YASM_ROOT environment variable override</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +find_program(NASM_EXECUTABLE</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> + NAMES nasm nasm-2.13.0-win32 nasm-2.13.0-win64 nasm nasm-2.13.0-win32 nasm-2.13.0-win64</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> + HINTS $ENV{NASM_ROOT} ${NASM_ROOT}</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> + PATH_SUFFIXES bin</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +if(NASM_EXECUTABLE)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        execute_process(COMMAND ${NASM_EXECUTABLE} -version</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +            OUTPUT_VARIABLE nasm_version</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +            ERROR_QUIET</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +            OUTPUT_STRIP_TRAILING_WHITESPACE</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +            )</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    if(nasm_version MATCHES "^NASM version ([0-9\\.]*)")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        set(NASM_VERSION_STRING "${CMAKE_MATCH_1}")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    unset(nasm_version)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +# Provide standardized success/failure messages</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +find_package_handle_standard_args(nasm</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    REQUIRED_VARS NASM_EXECUTABLE</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    VERSION_VAR NASM_VERSION_STRING)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> diff -r 182bfd0d5af9 -r 16ea92bf3627 source/cmake/FindYasm.cmake</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> --- a/source/cmake/FindYasm.cmake    Thu Nov 02 09:39:58 2017 +0530</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +++ /dev/null    Thu Jan 01 00:00:00 1970 +0000</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -1,25 +0,0 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -include(FindPackageHandleStandardArgs)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -# Simple path search with YASM_ROOT environment variable override</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -find_program(YASM_EXECUTABLE</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> - NAMES yasm yasm-1.2.0-win32 yasm-1.2.0-win64 yasm yasm-1.3.0-win32 yasm-1.3.0-win64</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> - HINTS $ENV{YASM_ROOT} ${YASM_ROOT}</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> - PATH_SUFFIXES bin</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -if(YASM_EXECUTABLE)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    execute_process(COMMAND ${YASM_EXECUTABLE} --version</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        OUTPUT_VARIABLE yasm_version</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        ERROR_QUIET</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        OUTPUT_STRIP_TRAILING_WHITESPACE</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        )</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    if(yasm_version MATCHES "^yasm ([0-9\\.]*)")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        set(YASM_VERSION_STRING "${CMAKE_MATCH_1}")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    unset(yasm_version)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -# Provide standardized success/failure messages</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -find_package_handle_standard_args(yasm</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    REQUIRED_VARS YASM_EXECUTABLE</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    VERSION_VAR YASM_VERSION_STRING)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> diff -r 182bfd0d5af9 -r 16ea92bf3627 source/common/CMakeLists.txt</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> --- a/source/common/CMakeLists.txt    Thu Nov 02 09:39:58 2017 +0530</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +++ b/source/common/CMakeLists.txt    Thu Nov 02 09:40:41 2017 +0530</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -72,12 +72,12 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       if(MSVC_IDE OR XCODE)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        # MSVC requires custom build rules in the main cmake script for yasm</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        set(MSVC_ASMS "${A_SRCS}" CACHE INTERNAL "yasm sources")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        # MSVC requires custom build rules in the main cmake script for nasm</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        set(MSVC_ASMS "${A_SRCS}" CACHE INTERNAL "nasm sources")</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>           set(A_SRCS)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    enable_language(ASM_YASM)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    enable_language(ASM_NASM)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       foreach(SRC ${A_SRCS} ${C_SRCS})</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>           set(ASM_PRIMITIVES ${ASM_PRIMITIVES} x86/${SRC})</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> diff -r 182bfd0d5af9 -r 16ea92bf3627 source/common/x86/x86inc.asm</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> --- a/source/common/x86/x86inc.asm    Thu Nov 02 09:39:58 2017 +0530</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +++ b/source/common/x86/x86inc.asm    Thu Nov 02 09:40:41 2017 +0530</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -66,6 +66,15 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       %endif</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> %endif</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +%define FORMAT_ELF 0</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +%ifidn __OUTPUT_FORMAT__,elf</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    %define FORMAT_ELF 1</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +%elifidn __OUTPUT_FORMAT__,elf32</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    %define FORMAT_ELF 1</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +%elifidn __OUTPUT_FORMAT__,elf64</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    %define FORMAT_ELF 1</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +%endif</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> %ifdef PREFIX</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       %define mangle(x) _ %+ x</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> %else</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -88,6 +97,10 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       default rel</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> %endif</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +%ifdef __NASM_VER__</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    %use smartalign</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +%endif</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> ; Macros to eliminate most code duplication between x86_32 and x86_64:</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> ; Currently this works only for leaf functions which load all their arguments</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> ; into registers at the start, and make no other use of the stack. Luckily that</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -685,7 +698,7 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>           CAT_XDEFINE cglobaled_, %2, 1</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       %endif</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       %xdefine current_function %2</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    %ifidn __OUTPUT_FORMAT__,elf</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    %if FORMAT_ELF</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>           global %2:function %%VISIBILITY</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       %else</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>           global %2</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -711,14 +724,16 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> ; like cextern, but without the prefix</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> %macro cextern_naked 1</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    %xdefine %1 mangle(%1)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    %ifdef PREFIX</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        %xdefine %1 mangle(%1)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    %endif</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       CAT_XDEFINE cglobaled_, %1, 1</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       extern %1</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> %endmacro</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> %macro const 1-2+</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       %xdefine %1 mangle(private_prefix %+ _ %+ %1)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    %ifidn __OUTPUT_FORMAT__,elf</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    %if FORMAT_ELF</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>           global %1:data hidden</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       %else</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>           global %1</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -727,9 +742,8 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       %1: %2</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> %endmacro</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -; This is needed for ELF, otherwise the GNU linker assumes the stack is</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -; executable by default.</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -%ifidn __OUTPUT_FORMAT__,elf</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +; This is needed for ELF, otherwise the GNU linker assumes the stack is executable by default.</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +%if FORMAT_ELF</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       [SECTION .note.GNU-stack noalloc noexec nowrite progbits]</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> %endif</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -801,9 +815,17 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       %endif</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       %if ARCH_X86_64 || cpuflag(sse2)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        CPU amdnop</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        %ifdef __NASM_VER__</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +            ALIGNMODE p6</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        %else</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +            CPU amdnop</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        %endif</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       %else</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        CPU basicnop</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        %ifdef __NASM_VER__</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +            ALIGNMODE nop</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        %else</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +            CPU basicnop</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        %endif</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       %endif</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> %endmacro</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -1467,7 +1489,7 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>                   v%5%6 %1, %2, %3, %4</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>               %elifidn %1, %2</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>                   ; If %3 or %4 is a memory operand it needs to be encoded as the last operand.</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -                %ifid %3</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +                %ifnum sizeof%3</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>                       v%{5}213%6 %2, %3, %4</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>                   %else</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>                       v%{5}132%6 %2, %4, %3</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -1491,14 +1513,3 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> FMA4_INSTR fmsubadd, pd, ps</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> FMA4_INSTR fnmadd,   pd, ps, sd, ss</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> FMA4_INSTR fnmsub,   pd, ps, sd, ss</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -; workaround: vpbroadcastq is broken in x86_32 due to a yasm bug (fixed in 1.3.0)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -%if __YASM_VERSION_ID__ < 0x01030000 && ARCH_X86_64 == 0</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    %macro vpbroadcastq 2</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        %if sizeof%1 == 16</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -            movddup %1, %2</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        %else</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -            vbroadcastsd %1, %2</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        %endif</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    %endmacro</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -%endif</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> diff -r 182bfd0d5af9 -r 16ea92bf3627 source/test/CMakeLists.txt</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> --- a/source/test/CMakeLists.txt    Thu Nov 02 09:39:58 2017 +0530</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +++ b/source/test/CMakeLists.txt    Thu Nov 02 09:40:41 2017 +0530</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -7,37 +7,37 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> # add X86 assembly files</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> if(X86)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -enable_language(ASM_YASM)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +enable_language(ASM_NASM)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> if(MSVC_IDE)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    set(YASM_SRC checkasm-a.obj)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    set(NASM_SRC checkasm-a.obj)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       add_custom_command(</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>           OUTPUT checkasm-a.obj</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        COMMAND ${YASM_EXECUTABLE}</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        ARGS ${YASM_FLAGS} ${CMAKE_CURRENT_SOURCE_DIR}/checkasm-a.asm -o checkasm-a.obj</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        COMMAND ${NASM_EXECUTABLE}</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        ARGS ${NASM_FLAGS} ${CMAKE_CURRENT_SOURCE_DIR}/checkasm-a.asm -o checkasm-a.obj</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>           DEPENDS checkasm-a.asm)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> else()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    set(YASM_SRC checkasm-a.asm)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    set(NASM_SRC checkasm-a.asm)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> endif()</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> endif(X86)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> # add ARM assembly files</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> if(ARM OR CROSS_COMPILE_ARM)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       enable_language(ASM)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    set(YASM_SRC checkasm-arm.S)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    set(NASM_SRC checkasm-arm.S)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       add_custom_command(</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>           OUTPUT checkasm-arm.obj</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>           COMMAND ${CMAKE_CXX_COMPILER}</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -        ARGS ${YASM_FLAGS} ${CMAKE_CURRENT_SOURCE_DIR}/checkasm-arm.S -o checkasm-arm.obj</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +        ARGS ${NASM_FLAGS} ${CMAKE_CURRENT_SOURCE_DIR}/checkasm-arm.S -o checkasm-arm.obj</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>           DEPENDS checkasm-arm.S)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> endif(ARM OR CROSS_COMPILE_ARM)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> # add PowerPC assembly files</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> if(POWER)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    set(YASM_SRC)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    set(NASM_SRC)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> endif(POWER)</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -add_executable(TestBench ${YASM_SRC}</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +add_executable(TestBench ${NASM_SRC}</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       testbench.cpp testharness.h</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       pixelharness.cpp pixelharness.h</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       mbdstharness.cpp mbdstharness.h</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> diff -r 182bfd0d5af9 -r 16ea92bf3627 source/test/checkasm-a.asm</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> --- a/source/test/checkasm-a.asm    Thu Nov 02 09:39:58 2017 +0530</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +++ b/source/test/checkasm-a.asm    Thu Nov 02 09:40:41 2017 +0530</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -26,7 +26,7 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> ;* For more information, contact us at license @ <a href="http://x265.com">x265.com</a>.</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> ;*****************************************************************************</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -%include "../common/x86/x86inc.asm"</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +%include "x86inc.asm"</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> SECTION_RODATA</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -35,24 +35,24 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> %if ARCH_X86_64</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> ; just random numbers to reduce the chance of incidental match</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> ALIGN 16</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -x6:  ddq 0x79445c159ce790641a1b2550a612b48c</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -x7:  ddq 0x86b2536fcd8cf6362eed899d5a28ddcd</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -x8:  ddq 0x3f2bf84fc0fcca4eb0856806085e7943</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -x9:  ddq 0xd229e1f5b281303facbd382dcf5b8de2</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -x10: ddq 0xab63e2e11fa38ed971aeaff20b095fd9</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -x11: ddq 0x77d410d5c42c882d89b0c0765892729a</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -x12: ddq 0x24b3c1d2a024048bc45ea11a955d8dd5</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -x13: ddq 0xdd7b8919edd427862e8ec680de14b47c</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -x14: ddq 0x11e53e2b2ac655ef135ce6888fa02cbf</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -x15: ddq 0x6de8f4c914c334d5011ff554472a7a10</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -n7:   dq 0x21f86d66c8ca00ce</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -n8:   dq 0x75b6ba21077c48ad</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -n9:   dq 0xed56bb2dcb3c7736</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -n10:  dq 0x8bda43d3fd1a7e06</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -n11:  dq 0xb64a9c9e5d318408</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -n12:  dq 0xdf9a54b303f1d3a3</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -n13:  dq 0x4a75479abd64e097</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -n14:  dq 0x249214109d5d1c88</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +x6:  dq 0x1a1b2550a612b48c,0x79445c159ce79064</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +x7:  dq 0x2eed899d5a28ddcd,0x86b2536fcd8cf636</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +x8:  dq 0xb0856806085e7943,0x3f2bf84fc0fcca4e</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +x9:  dq 0xacbd382dcf5b8de2,0xd229e1f5b281303f</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +x10: dq 0x71aeaff20b095fd9,0xab63e2e11fa38ed9</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +x11: dq 0x89b0c0765892729a,0x77d410d5c42c882d</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +x12: dq 0xc45ea11a955d8dd5,0x24b3c1d2a024048b</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +x13: dq 0x2e8ec680de14b47c,0xdd7b8919edd42786</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +x14: dq 0x135ce6888fa02cbf,0x11e53e2b2ac655ef</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +x15: dq 0x011ff554472a7a10,0x6de8f4c914c334d5</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +n7:  dq 0x21f86d66c8ca00ce</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +n8:  dq 0x75b6ba21077c48ad</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +n9:  dq 0xed56bb2dcb3c7736</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +n10: dq 0x8bda43d3fd1a7e06</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +n11: dq 0xb64a9c9e5d318408</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +n12: dq 0xdf9a54b303f1d3a3</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +n13: dq 0x4a75479abd64e097</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +n14: dq 0x249214109d5d1c88</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> %endif</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> SECTION .text</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -70,14 +70,14 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> ;-----------------------------------------------------------------------------</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> cglobal checkasm_stack_clobber, 1,2</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       ; Clobber the stack with junk below the stack pointer</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    %define size (max_args+6)*8</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    SUB  rsp, size</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    mov   r1, size-8</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    %define argsize (max_args+6)*8</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    SUB  rsp, argsize</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    mov   r1, argsize-8</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> .loop:</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       mov [rsp+r1], r0</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       sub   r1, 8</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       jge .loop</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> -    ADD  rsp, size</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    ADD  rsp, argsize</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       RET</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> %if WIN64</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> @@ -156,7 +156,11 @@</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       mov  r9, rax</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       mov r10, rdx</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       lea  r0, [error_message]</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +%if FORMAT_ELF</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +    call puts wrt ..plt</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +%else</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       call puts</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> +%endif</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       mov  r1, [rsp+max_args*8]</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       mov  dword [r1], 0</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">>       mov  rdx, r10</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> _______________________________________________</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> x265-devel mailing list</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> <a href="mailto:x265-devel@videolan.org" target="_blank">x265-devel@videolan.org</a></span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> <a href="https://mailman.videolan.org/listinfo/x265-devel" target="_blank">https://mailman.videolan.org/listinfo/x265-devel</a></span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> _______________________________________________</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> x265-devel mailing list</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> <a href="mailto:x265-devel@videolan.org" target="_blank">x265-devel@videolan.org</a></span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> <a href="https://mailman.videolan.org/listinfo/x265-devel" target="_blank">https://mailman.videolan.org/listinfo/x265-devel</a></span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a"> </span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">_______________________________________________</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a">x265-devel mailing list</span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a"><a href="mailto:x265-devel@videolan.org" target="_blank">x265-devel@videolan.org</a></span></p></div><div><p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Helvetica Neue","serif";color:#26282a"><a href="https://mailman.videolan.org/listinfo/x265-devel" target="_blank">https://mailman.videolan.org/listinfo/x265-devel</a></span></p></div></div></div></div></div></div></body></html>