<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Compiler emits invalid byte sequence in Intel® oneAPI DPC++/C++ Compiler</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-DPC-C-Compiler/Compiler-emits-invalid-byte-sequence/m-p/1608926#M3894</link>
    <description>&lt;P&gt;This has been fixed in version 2024.1&lt;/P&gt;
&lt;P&gt;&lt;A class="external-link" href="http://cmplrexplorer.intel.com/z/3qfb4e" target="_blank" rel="nofollow noopener"&gt;http://cmplrexplorer.intel.com/z/3qfb4e&lt;/A&gt;&lt;/P&gt;</description>
    <pubDate>Fri, 21 Jun 2024 21:20:12 GMT</pubDate>
    <dc:creator>Alex_Y_Intel</dc:creator>
    <dc:date>2024-06-21T21:20:12Z</dc:date>
    <item>
      <title>Compiler emits invalid byte sequence</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-DPC-C-Compiler/Compiler-emits-invalid-byte-sequence/m-p/1605964#M3852</link>
      <description>&lt;P&gt;I discovered that the latest x86-64 ICX 2024.0.0 emits invalid registers when it generates x86 binaries.&lt;/P&gt;&lt;P&gt;This error has been identified in 16 opcodes.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Buggy code.&lt;/P&gt;&lt;P&gt;```&lt;/P&gt;&lt;P&gt;/* Type your code here, or load an example. */&lt;BR /&gt;void bug(int num) {&lt;BR /&gt;__asm__(&lt;BR /&gt;".intel_syntax noprefix\n"&lt;BR /&gt;"cmpbxadd DWORD PTR [1], EDI, EBP\n" ".align 32\n"&lt;BR /&gt;"cmplexadd DWORD PTR [1], EDI, EBP\n" ".align 32\n"&lt;BR /&gt;"cmplxadd DWORD PTR [1], EDI, EBP\n" ".align 32\n"&lt;BR /&gt;"cmpnbexadd DWORD PTR [1], EDI, EBP\n" ".align 32\n"&lt;BR /&gt;"cmpnbxadd DWORD PTR [1], EDI, EBP\n" ".align 32\n"&lt;BR /&gt;"cmpbexadd DWORD PTR [1], EDI, EBP\n" ".align 32\n"&lt;BR /&gt;"cmpnlxadd DWORD PTR [1], EDI, EBP\n" ".align 32\n"&lt;BR /&gt;"cmpnoxadd DWORD PTR [1], EDI, EBP\n" ".align 32\n"&lt;BR /&gt;"cmpnpxadd DWORD PTR [1], EDI, EBP\n" ".align 32\n"&lt;BR /&gt;"cmpnsxadd DWORD PTR [1], EDI, EBP\n" ".align 32\n"&lt;BR /&gt;"cmpnzxadd DWORD PTR [1], EDI, EBP\n" ".align 32\n"&lt;BR /&gt;"cmpoxadd DWORD PTR [1], EDI, EBP\n" ".align 32\n"&lt;BR /&gt;"cmppxadd DWORD PTR [1], EDI, EBP\n" ".align 32\n"&lt;BR /&gt;"cmpbexadd DWORD PTR [1], EDI, EBP\n" ".align 32\n"&lt;BR /&gt;"cmpsxadd DWORD PTR [1], EDI, EBP\n" ".align 32\n"&lt;BR /&gt;"cmpzxadd DWORD PTR [1], EDI, EBP\n" ".align 32\n"&lt;BR /&gt;);&lt;BR /&gt;}&lt;BR /&gt;```&lt;/P&gt;&lt;P&gt;Compile Option: -m32&lt;/P&gt;&lt;P&gt;Compiled Code&lt;BR /&gt;```&lt;BR /&gt;bug:&lt;BR /&gt;push ebp&lt;BR /&gt;mov ebp,esp&lt;BR /&gt;mov eax,DWORD PTR [ebp+0x8]&lt;BR /&gt;(bad)&lt;BR /&gt;cmp eax,0x1&lt;BR /&gt;data16 data16 data16 data16 data16 nop WORD PTR cs:[eax+eax*1+0x0]&lt;BR /&gt;xchg ax,ax&lt;BR /&gt;(bad)&lt;BR /&gt;cmp eax,0x1&lt;BR /&gt;data16 data16 data16 data16 data16 nop WORD PTR cs:[eax+eax*1+0x0]&lt;BR /&gt;nop DWORD PTR [eax+eax*1+0x0]&lt;BR /&gt;(bad)&lt;BR /&gt;cmp eax,0x1&lt;BR /&gt;data16 data16 data16 data16 data16 nop WORD PTR cs:[eax+eax*1+0x0]&lt;BR /&gt;nop DWORD PTR [eax+eax*1+0x0]&lt;BR /&gt;(bad)&lt;BR /&gt;cmp eax,0x1&lt;BR /&gt;data16 data16 data16 data16 data16 nop WORD PTR cs:[eax+eax*1+0x0]&lt;BR /&gt;nop DWORD PTR [eax+eax*1+0x0]&lt;BR /&gt;(bad)&lt;BR /&gt;cmp eax,0x1&lt;BR /&gt;data16 data16 data16 data16 data16 nop WORD PTR cs:[eax+eax*1+0x0]&lt;BR /&gt;nop DWORD PTR [eax+eax*1+0x0]&lt;BR /&gt;(bad)&lt;BR /&gt;cmp eax,0x1&lt;BR /&gt;data16 data16 data16 data16 data16 nop WORD PTR cs:[eax+eax*1+0x0]&lt;BR /&gt;nop DWORD PTR [eax+eax*1+0x0]&lt;BR /&gt;(bad)&lt;BR /&gt;cmp eax,0x1&lt;BR /&gt;data16 data16 data16 data16 data16 nop WORD PTR cs:[eax+eax*1+0x0]&lt;BR /&gt;nop DWORD PTR [eax+eax*1+0x0]&lt;BR /&gt;(bad)&lt;BR /&gt;cmp eax,0x1&lt;BR /&gt;data16 data16 data16 data16 data16 nop WORD PTR cs:[eax+eax*1+0x0]&lt;BR /&gt;nop DWORD PTR [eax+eax*1+0x0]&lt;BR /&gt;(bad)&lt;BR /&gt;cmp eax,0x1&lt;BR /&gt;data16 data16 data16 data16 data16 nop WORD PTR cs:[eax+eax*1+0x0]&lt;BR /&gt;nop DWORD PTR [eax+eax*1+0x0]&lt;BR /&gt;(bad)&lt;BR /&gt;cmp eax,0x1&lt;BR /&gt;data16 data16 data16 data16 data16 nop WORD PTR cs:[eax+eax*1+0x0]&lt;BR /&gt;nop DWORD PTR [eax+eax*1+0x0]&lt;BR /&gt;(bad)&lt;BR /&gt;cmp eax,0x1&lt;BR /&gt;data16 data16 data16 data16 data16 nop WORD PTR cs:[eax+eax*1+0x0]&lt;BR /&gt;nop DWORD PTR [eax+eax*1+0x0]&lt;BR /&gt;(bad)&lt;BR /&gt;cmp eax,0x1&lt;BR /&gt;data16 data16 data16 data16 data16 nop WORD PTR cs:[eax+eax*1+0x0]&lt;BR /&gt;nop DWORD PTR [eax+eax*1+0x0]&lt;BR /&gt;(bad)&lt;BR /&gt;cmp eax,0x1&lt;BR /&gt;data16 data16 data16 data16 data16 nop WORD PTR cs:[eax+eax*1+0x0]&lt;BR /&gt;nop DWORD PTR [eax+eax*1+0x0]&lt;BR /&gt;(bad)&lt;BR /&gt;cmp eax,0x1&lt;BR /&gt;data16 data16 data16 data16 data16 nop WORD PTR cs:[eax+eax*1+0x0]&lt;BR /&gt;nop DWORD PTR [eax+eax*1+0x0]&lt;BR /&gt;(bad)&lt;BR /&gt;cmp eax,0x1&lt;BR /&gt;data16 data16 data16 data16 data16 nop WORD PTR cs:[eax+eax*1+0x0]&lt;BR /&gt;nop DWORD PTR [eax+eax*1+0x0]&lt;BR /&gt;(bad)&lt;BR /&gt;cmp eax,0x1&lt;BR /&gt;data16 data16 data16 data16 data16 nop WORD PTR cs:[eax+eax*1+0x0]&lt;BR /&gt;nop DWORD PTR [eax+eax*1+0x0]&lt;BR /&gt;pop ebp&lt;BR /&gt;ret&lt;BR /&gt;```&lt;/P&gt;&lt;P&gt;I tested it through godbolt.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 12 Jun 2024 05:56:52 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-DPC-C-Compiler/Compiler-emits-invalid-byte-sequence/m-p/1605964#M3852</guid>
      <dc:creator>hyungseok</dc:creator>
      <dc:date>2024-06-12T05:56:52Z</dc:date>
    </item>
    <item>
      <title>Re: Compiler emits invalid byte sequence</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-DPC-C-Compiler/Compiler-emits-invalid-byte-sequence/m-p/1607498#M3873</link>
      <description>&lt;P&gt;I've escalated your issue to our internal engineering team&lt;/P&gt;</description>
      <pubDate>Tue, 18 Jun 2024 01:40:12 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-DPC-C-Compiler/Compiler-emits-invalid-byte-sequence/m-p/1607498#M3873</guid>
      <dc:creator>Alex_Y_Intel</dc:creator>
      <dc:date>2024-06-18T01:40:12Z</dc:date>
    </item>
    <item>
      <title>Re: Compiler emits invalid byte sequence</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-DPC-C-Compiler/Compiler-emits-invalid-byte-sequence/m-p/1608926#M3894</link>
      <description>&lt;P&gt;This has been fixed in version 2024.1&lt;/P&gt;
&lt;P&gt;&lt;A class="external-link" href="http://cmplrexplorer.intel.com/z/3qfb4e" target="_blank" rel="nofollow noopener"&gt;http://cmplrexplorer.intel.com/z/3qfb4e&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 21 Jun 2024 21:20:12 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-DPC-C-Compiler/Compiler-emits-invalid-byte-sequence/m-p/1608926#M3894</guid>
      <dc:creator>Alex_Y_Intel</dc:creator>
      <dc:date>2024-06-21T21:20:12Z</dc:date>
    </item>
  </channel>
</rss>

