MULUH — Multiply Unsigned High

Instruction Word

Slot
Inst
6
3
6
2
6
1
6
0
5
9
5
8
5
7
5
6
5
5
5
4
5
3
5
2
5
1
5
0
4
9
4
8
4
7
4
6
4
5
4
4
4
3
4
2
4
1
4
0
3
9
3
8
3
7
3
6
3
5
3
4
3
3
3
2
3
1
3
0
2
9
2
8
2
7
2
6
2
5
2
4
2
3
2
2
2
1
2
0
1
9
1
8
1
7
1
6
1
5
1
4
1
3
1
2
1
1
1
0
9876543210
Format x24 - 24 bit(s) 0
MULUH 10100010 0000
r 3210
s 3210
t 3210

Assembler Syntax

MULUH ar, as, at

C Syntax

#include <xtensa/tie/xt_mul.h>

extern unsigned XT_MULUH(unsigned s, unsigned t);

Description

(please consult the Xtensa ® Instruction Set Architecture Reference Manual for any cross references and additional information)

MULUH performs an unsigned multiplication of the contents of address registers as and at, and writes the most significant 32 bits of the product to address register ar.

Operation

tp ← (032||AR[s]) \* (032||AR[t])
AR[r] ← tp63..32

Exceptions

EveryInstR Group (see EveryInstR Group:)

Protos that use MULUH

proto MULUH { out uint32 r, in uint32 s, in uint32 t }{}{
MULUH r, s, t;
}