8.5.66. mulxss
| Instruction | multiply extended signed/signed | 
| Operation |   rC ← ((signed) rA) x ((signed) rB)) 63..32  |  
      
| Assembler Syntax |   mulxss rC, rA, rB  |  
      
| Example |   mulxss r6, r7, r8  |  
      
| Description |   Treating rA and rB as signed integers, mulxss multiplies rA times rB, and stores the 32 high-order bits of the product to rC. Nios® II processors that do not implement the mulxss instruction cause an unimplemented instruction exception.  |  
      
| Usage |   Use mulxss and mul to compute the full 64-bit product of two 32-bit signed integers. Furthermore, mulxss can be used as part of the calculation of a 128-bit product of two 64-bit signed integers. Given two 64-bit integers, each contained in a pair of 32-bit registers, (S1 : U1) and (S2 : U2), their 128-bit product is (U1 x U2) + ((S1 x U2) << 32) + ((U1 x S2) << 32) + ((S1 x S2) << 64). The mulxss and mul instructions are used to calculate the 64-bit product S1 x S2.  |  
      
| Exceptions |   Unimplemented instruction  |  
      
| Instruction Type |   R  |  
      
| Instruction Fields |   A = Register index of operand rA B = Register index of operand rB C = Register index of operand rC  |  
      
| Bit Fields | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 
| A | B | C | 0x1f | ||||||||||||
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | 
| 0x1f | 0 | 0x3a | |||||||||||||