<html>
    <head>
      <base href="http://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 --- - mips assembler crashes"
   href="http://llvm.org/bugs/show_bug.cgi?id=22658">22658</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>mips assembler crashes
          </td>
        </tr>

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

        <tr>
          <th>Version</th>
          <td>3.6
          </td>
        </tr>

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

        <tr>
          <th>OS</th>
          <td>Linux
          </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>Frontend
          </td>
        </tr>

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

        <tr>
          <th>Reporter</th>
          <td>phcoder@gmail.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvmbugs@cs.uiuc.edu
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr></table>
      <p>
        <div>
        <pre>sample:

a:
    addiu $t7, $s0, (b - a)
b:    nop

crashes clang

0  libLLVM-3.7.so.1 0x00007fc003f20782 llvm::sys::PrintStackTrace(_IO_FILE*) +
34
1  libLLVM-3.7.so.1 0x00007fc003f1eed1
2  libpthread.so.0  0x00007fc002b8f8d0
3  libLLVM-3.7.so.1 0x00007fc003606570
llvm::MipsMCCodeEmitter::getMachineOpValue(llvm::MCInst const&, llvm::MCOperand
const&, llvm::SmallVectorImpl<llvm::MCFixup>&, llvm::MCSubtargetInfo const&)
const + 0
Stack dump:
0.      Program arguments: /usr/lib/llvm-3.7/bin/clang -cc1as -triple
mipsel--linux-gnu -filetype obj -main-file-name mips.S -target-cpu mips32r2
-target-feature -n64 -target-feature +o32 -target-feature +soft-float -g
-fdebug-compilation-dir /home/phcoder/compile/mips -dwarf-debug-producer Debian
clang version 3.7.0-svn227076-1 (trunk) (based on LLVM 3.7.0) -o /dev/null
/tmp/mips-648385.s 
1.      Program arguments: -triple mipsel--linux-gnu -filetype obj
-main-file-name mips.S -target-cpu mips32r2 -target-feature -n64
-target-feature +o32 -target-feature +soft-float -g -fdebug-compilation-dir
/home/phcoder/compile/mips -dwarf-debug-producer Debian clang version
3.7.0-svn227076-1 (trunk) (based on LLVM 3.7.0) -o /dev/null /tmp/mips-648385.s 
0  libLLVM-3.7.so.1 0x00007fc003f20782 llvm::sys::PrintStackTrace(_IO_FILE*) +
34
1  libLLVM-3.7.so.1 0x00007fc003f1eed1
2  libpthread.so.0  0x00007fc002b8f8d0
3  libLLVM-3.7.so.1 0x00007fc003606570
llvm::MipsMCCodeEmitter::getMachineOpValue(llvm::MCInst const&, llvm::MCOperand
const&, llvm::SmallVectorImpl<llvm::MCFixup>&, llvm::MCSubtargetInfo const&)
const + 0
clang: error: unable to execute command: Segmentation fault
clang: error: clang integrated assembler command failed due to signal (use -v
to see invocation)
Debian clang version 3.7.0-svn227076-1 (trunk) (based on LLVM 3.7.0)
Target: mipsel--linux-gnu
Thread model: posix
clang: note: diagnostic msg: PLEASE submit a bug report to
<a href="http://bugs.debian.org/">http://bugs.debian.org/</a> and include the crash backtrace, preprocessed source,
and associated run script.
clang: note: diagnostic msg: 
********************

PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
Preprocessed source(s) and associated run script(s) are located at:
clang: note: diagnostic msg: /tmp/mips-b48516.S
clang: note: diagnostic msg: /tmp/mips-b48516.sh
clang: note: diagnostic msg: 

/tmp/mips-b48516.S :
/* on mips clang doesn't support privilegied instructions, doubleword
store/load
   and crashes with hand-written assembly
 */

        .set mips3
        sync
        ld $t2, 0($t6)

a:
        addiu $t7, $s0, (b - a)
b:      nop

/tmp/mips-b48516.sh:

 "/usr/lib/llvm-3.7/bin/clang" "-cc1as" "-triple" "mipsel--linux-gnu"
"-filetype" "obj" "-main-file-name" "mips.S" "-target-cpu" "mips32r2"
"-target-feature" "-n64" "-target-feature" "+o32" "-target-feature"
"+soft-float" "-g" "-dwarf-debug-producer" "Debian clang version
3.7.0-svn227076-1 (trunk) (based on LLVM 3.7.0)" "/tmp/mips-648385.s"</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>