示例#1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="Elf64Linker"/> class.
        /// </summary>
        public Elf64Linker()
        {
            this.sections = new List<LinkerSection>();

            // Create the default section set
            Sections.Elf64Section[] sections = new Sections.Elf64Section[(int)SectionKind.Max];
            sections[(int)SectionKind.Text] = new Sections.Elf64CodeSection();
            sections[(int)SectionKind.Data] = new Sections.Elf64DataSection();
            sections[(int)SectionKind.ROData] = new Sections.Elf64RoDataSection();
            sections[(int)SectionKind.BSS] = new Sections.Elf64BssSection();
            this.sections.AddRange(sections);

            nullSection = new Mosa.Runtime.Linker.Elf64.Sections.Elf64NullSection();
            stringTableSection = new Mosa.Runtime.Linker.Elf64.Sections.Elf64StringTableSection();
        }
示例#2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="Elf64Linker"/> class.
        /// </summary>
        public Elf64Linker()
        {
            this.sections = new List <LinkerSection>();

            // Create the default section set
            Sections.Elf64Section[] sections = new Sections.Elf64Section[(int)SectionKind.Max];
            sections[(int)SectionKind.Text]   = new Sections.Elf64CodeSection();
            sections[(int)SectionKind.Data]   = new Sections.Elf64DataSection();
            sections[(int)SectionKind.ROData] = new Sections.Elf64RoDataSection();
            sections[(int)SectionKind.BSS]    = new Sections.Elf64BssSection();
            this.sections.AddRange(sections);

            nullSection        = new Mosa.Runtime.Linker.Elf64.Sections.Elf64NullSection();
            stringTableSection = new Mosa.Runtime.Linker.Elf64.Sections.Elf64StringTableSection();
        }