internal void RealEmit(int ilOffset, CodeEmitter codeEmitter, ref int lineNumber) { if (pseudo == CodeType.OpCode) { if (lineNumber != -1) { if (codeEmitter.linenums == null) { codeEmitter.linenums = new IKVM.Attributes.LineNumberTableAttribute.LineNumberWriter(32); } codeEmitter.linenums.AddMapping(ilOffset, lineNumber); lineNumber = -1; } codeEmitter.RealEmitOpCode(opcode, data); } else if (pseudo == CodeType.LineNumber) { lineNumber = (int)data; } else { codeEmitter.RealEmitPseudoOpCode(ilOffset, pseudo, data); } }