Question about bytecodes and GetElementPtr

I have looked in the GetElementPtr FAQ but could not find the answer to this.

I have encountered a GetElementPtr instruction that looks like this:

%u.i = alloca %struct…0anon, align 8 ; <%struct…0anon*> [#uses=2]
%u = alloca %struct…0anon, align 8 ; <%struct…0anon*> [#uses=2]
%tmp = getelementptr %struct…0anon* %u, int 0, uint 0 ; <ulong*> [#uses=1]

So far so good. The bytecode for this GetElementPtr instruction is:

00000000000100001010101101101011
^^ Type 3, 3 operands
^^^^^^-- Opcode = 0x01a = 26 = GetElementPtr
^^^^^^-------- Type = 0x02b = 43
^^^^^^-------------- Operand 0 = 2 = %u
^^^^^^-------------------- Operand 1 = 1 = int (because of compaction table)
^^^^^^-------------------------- Operand 2 = 0 = zero

The bytecode has only three operands while the ll instruction clearly has five. How do I know from the bytecode that the result type is ulong* and not struct…0anon*?

Thanks in advance,

– Robert.