Пример #1
0
        public void Compile()
        {
            foreach (var subModule in this.SubModules)
            {
                subModule.Compile();
            }

            var sb = new CodeGenerator();

            abi = this.GenerateCode(sb);

            Compiler.Instance.VerifyRegisters();

            asm = sb.ToString();

            var       lines = asm.Split('\n');
            DebugInfo temp;
            Dictionary <string, int> labels;

            script         = AssemblerUtils.BuildScript(lines, this.Name, out temp, out labels);
            this.debugInfo = temp;

            lines = AssemblerUtils.CommentOffsets(lines, this.debugInfo).ToArray();

            ProcessABI(abi, this.debugInfo);

            asm = string.Join('\n', lines);
        }