Closedjeremybennett opened this issue over 14 years ago
jeremybennett commented over 14 years ago
<p>
Or1ksim has a configuration parameter which controls whether arithmetic instructions set the overflow flag. By default this is off, and applies to all arithmetic and logic instructions.
</p>
<p>
This should not be an option. The setting or otherwise of the carry flag specified in each instruction's definition.
</p>
<p>
Affects the following instructions, which should always set the overflow flag if approriate: <tt>l.add</tt>, <tt>l.addc</tt>, <tt>l.div</tt>, <tt>l.divu</tt>, <tt>l.mul</tt> and <tt>l.sub</tt>.
</p>
<p>
Affects the following instructions, which should never set the overflow flag: <tt>l.and</tt>, <tt>l.or</tt>, <tt>l.sll</tt>, <tt>l.sra</tt>, <tt>l.srl</tt> and <tt>l.xor</tt>.
</p>
<p>
A number of ALU operations are missing. When implemented, these should set the overflow flag appropriately.
</p>
<p>
Jeremy
</p>
<p>
-- <br />
Tel: +44 (1590) 610184<br />
Cell: +44 (7970) 676050<br />
SkypeID: jeremybennett<br />
Email: <a href="mailto:jeremy.bennett@embecosm.com">jeremy.bennett@embecosm.com</a><br />
Web: <a href="http://www.embecosm.com">www.embecosm.com</a>
</p>
jeremybennett was assigned over 14 years ago
jeremybennett commented over 14 years ago
<p>
Corrected in top of tree. Regression tests added.
</p>
<p>
Marking closed.
</p>
<p>
Jeremy
</p>