Esempio n. 1
0
            public CIE(DwarfFrameReader frame, long offset, CIE next)
            {
                this.frame  = frame;
                this.offset = offset;
                this.next   = next;

                DwarfBinaryReader reader = new DwarfBinaryReader(
                    frame.bfd, frame.blob, false);

                read_cie(reader);
            }
Esempio n. 2
0
        void create_frame_reader()
        {
            long    vma_base = base_address.IsNull ? 0 : base_address.Address;
            Section section  = GetSectionByName(".debug_frame", false);

            if (section != null)
            {
                byte[]     contents = GetSectionContents(section.section);
                TargetBlob blob     = new TargetBlob(contents, info);
                frame_reader = new DwarfFrameReader(
                    this, blob, vma_base + section.vma, false);
            }

            section = GetSectionByName(".eh_frame", false);
            if (section != null)
            {
                byte[]     contents = GetSectionContents(section.section);
                TargetBlob blob     = new TargetBlob(contents, info);
                eh_frame_reader = new DwarfFrameReader(
                    this, blob, vma_base + section.vma, true);
            }
        }
Esempio n. 3
0
            public CIE(DwarfFrameReader frame, long offset, CIE next)
            {
                this.frame = frame;
                this.offset = offset;
                this.next = next;

                DwarfBinaryReader reader = new DwarfBinaryReader (
                    frame.bfd, frame.blob, false);
                read_cie (reader);
            }
Esempio n. 4
0
        void create_frame_reader()
        {
            long vma_base = base_address.IsNull ? 0 : base_address.Address;
            Section section = GetSectionByName (".debug_frame", false);
            if (section != null) {
                byte[] contents = GetSectionContents (section.section);
                TargetBlob blob = new TargetBlob (contents, info);
                frame_reader = new DwarfFrameReader (
                    this, blob, vma_base + section.vma, false);
            }

            section = GetSectionByName (".eh_frame", false);
            if (section != null) {
                byte[] contents = GetSectionContents (section.section);
                TargetBlob blob = new TargetBlob (contents, info);
                eh_frame_reader = new DwarfFrameReader (
                    this, blob, vma_base + section.vma, true);
            }
        }