<html>
    <head>
      <base href="https://llvm.org/bugs/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - Assertion failed: isValidGCCRegisterName(Name) && "Invalid register passed in", file E:\llvm\tools\clang\lib\Basic\Targe tInfo.cpp, line 415"
   href="https://llvm.org/bugs/show_bug.cgi?id=30930">30930</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Assertion failed: isValidGCCRegisterName(Name) && "Invalid register passed in", file E:\llvm\tools\clang\lib\Basic\Targe tInfo.cpp, line 415
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>clang
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>unspecified
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Windows NT
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>-New Bugs
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>unassignedclangbugs@nondot.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>amine.khaldi@reactos.org
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvm-bugs@lists.llvm.org
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr></table>
      <p>
        <div>
        <pre>This was revealed by
<a href="https://github.com/reactos/reactos/blob/master/reactos/ntoskrnl/ke/i386/cpu.c">https://github.com/reactos/reactos/blob/master/reactos/ntoskrnl/ke/i386/cpu.c</a>
and then reduced to:

void foo(void)
{
    __asm mov cr2, eax;
}

cl /c compiles it without errors, but clang-cl /c emits:

Assertion failed: isValidGCCRegisterName(Name) && "Invalid register passed in",
file E:\llvm\tools\clang\lib\Basic\TargetInfo.cpp, line 415
Wrote crash dump file "c:\Temp\clang-cl.exe-5c1a2a.dmp"
0x013BD787 (0x00000016 0x00000007 0x00000007 0x00000003)
0x672264D2 (0x02C547F8 0x02C54738 0x02F48700 0x0000008C), abort() + 0x32
bytes(s)
0x6722824F (0x0000019F 0x02C547F8 0x02C54738 0x02F48700),
_get_wide_winmain_command_line() + 0xCDF bytes(s)
0x6722816D (0x0000019F 0x67228290 0x02F88128 0x00C9CAD0),
_get_wide_winmain_command_line() + 0xBFD bytes(s)
0x672275E9 (0x0000019F 0x025FD4A5 0x00C9D1F0 0x025FD4A5),
_get_wide_winmain_command_line() + 0x79 bytes(s)
0x672282A6 (0x02C547F8 0x02C54738 0x0000019F 0x02F88098), _wassert() + 0x16
bytes(s)
0x025FD4A5 (0x02F87FB0 0x02F822AA 0x02F87A3C 0x02F87F88)
0x02371ECF (0x0000003A 0x00C9D298 0x00C9D2A8 0x00C9D2B8)
0x02371AEE (0x00C9D368 0x02F87A60 0x02F87A60 0x00C9D534)
0x01FE9BAE (0x02FBA7F8 0x02F87F88 0x00000000 0x02FB6F58)
0x01E2BCF2 (0x00000000 0x02F87F88 0x02FB7A00 0x00000000)
clang-cl.exe: error: clang frontend command failed due to signal (use -v to see
invocation)
clang version 4.0.0 (trunk 286045)
Target: i686-pc-windows-msvc
Thread model: posix</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>