<html dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style id="owaParaStyle" type="text/css">
<!--
p
{margin-top:0;
margin-bottom:0}
-->
</style>
</head>
<body fpstyle="1" ocsi="0">
<div style="direction: ltr;font-family: Tahoma;color: #000000;font-size: 10pt;">Hello Daniel,
<div>At the moment we are preparing the patch for disassembling microMIPS 16 bit instructions and it will be on Phabricator tomorrow or on Wednesday.</div>
<div>Functionality is implemented in MipsDisassembler::getInstruction where first two bytes are read and decodeInstruction is called with DecoderTableMicroMips16 and only if it fails we read 4 bytes and call <span style="font-size: 13.6000003814697px;">decodeInstruction</span><span style="font-size: 13.6000003814697px;">
with </span><span style="font-size: 13.6000003814697px;">DecoderTableMicroMips32.</span></div>
<div><br>
</div>
<div><br>
</div>
<div>Regards,</div>
<div>Zoran</div>
<div><br>
<div style="font-family: Times New Roman; color: #000000; font-size: 16px">
<hr tabindex="-1">
<div id="divRpF587209" style="direction: ltr;"><font face="Tahoma" size="2" color="#000000"><b>From:</b> Daniel Sanders<br>
<b>Sent:</b> Sunday, November 02, 2014 5:49 PM<br>
<b>To:</b> Jun Koi; Vladimir Medic; Sasa Stankovic; Jozef Kolek; Zoran Jovanovic<br>
<b>Cc:</b> llvmdev@cs.uiuc.edu<br>
<b>Subject:</b> RE: Mips's MicroMips ??<br>
</font><br>
</div>
<div></div>
<div>
<div style="direction:ltr; font-family:Tahoma; color:#000000; font-size:10pt">Hi,<br>
<br>
I've had a quick look through MipsDisassembler.cpp and it seems that the disassembler doesn't know anything about 16-bit instructions at the moment. The two main problems are that DecoderTableMicroMips16 (which contains ADDU16_MM) is never used, and the disassembler
always reads the opcode as a 4-byte value.<br>
<br>
Vladimir/Sasa/Jozef/Zoran: I don't know much about the microMIPS encodings at the moment. Do you have the details on distinguishing 16-bit from 32-bit instructions?<br>
<div style="font-family:Times New Roman; color:#000000; font-size:16px">
<hr tabindex="-1">
<div id="divRpF558937" style="direction:ltr"><font color="#000000" face="Tahoma" size="2"><b>From:</b> Jun Koi [junkoi2004@gmail.com]<br>
<b>Sent:</b> 29 October 2014 14:46<br>
<b>To:</b> Daniel Sanders<br>
<b>Cc:</b> llvmdev@cs.uiuc.edu<br>
<b>Subject:</b> Mips's MicroMips ??<br>
</font><br>
</div>
<div></div>
<div>
<div dir="ltr">
<div>Hi,<br>
<br>
</div>
We have this line in micromips-16-bit-instructions.s<br>
<br>
# CHECK-EB: addu16 $6, $17, $4 # encoding: [0x07,0x42]<br>
<br>
<div>However, when I check this with llvm-mc, like below, I dont get back the assembly.<br>
This is against the latest LLVM code. What is wrong here?<br>
<br>
Thanks,<br>
Jun<br>
<br>
<br>
$ echo "0x07,0x42"|./Release+Asserts/bin/llvm-mc -disassemble -triple=mips -show-encoding -mattr=micromips<br>
.text<br>
<stdin>:1:1: warning: invalid instruction encoding<br>
0x07,0x42<br>
^<br>
<stdin>:1:6: warning: invalid instruction encoding<br>
0x07,0x42<br>
<br>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>