Home | History | Annotate | Download | only in dwarf

Lines Matching refs:section

45 // an ELF file containing a .debug_frame or .eh_frame section; you can then
72 using google_breakpad::test_assembler::Section;
89 const CFISection &section);
90 #define PERHAPS_WRITE_DEBUG_FRAME_FILE(name, section) \
91 WriteELFFrameSection("cfitest-" name, ".debug_frame", section);
92 #define PERHAPS_WRITE_EH_FRAME_FILE(name, section) \
93 WriteELFFrameSection("cfitest-" name, ".eh_frame", section);
95 #define PERHAPS_WRITE_DEBUG_FRAME_FILE(name, section)
96 #define PERHAPS_WRITE_EH_FRAME_FILE(name, section)
123 MockCallFrameErrorReporter() : Reporter("mock filename", "mock section") { }
197 CFISection section(kBigEndian, 8);
198 section
212 ASSERT_TRUE(section.GetContents(&contents));
222 CFISection section(kLittleEndian, 4);
223 section
237 ASSERT_TRUE(section.GetContents(&contents));
247 CFISection section(kBigEndian, 8);
248 section
261 ASSERT_TRUE(section.GetContents(&contents));
271 CFISection section(kBigEndian, 8);
272 section
276 section
287 ASSERT_TRUE(section.GetContents(&contents));
298 CFISection section(kLittleEndian, 4);
299 section.CIEHeader(0xffe799a8, 0x3398dcdd, 0x6e9683de, 3, "");
300 section.Append(10, dwarf2reader::DW_CFA_nop);
301 section.FinishEntry();
303 PERHAPS_WRITE_DEBUG_FRAME_FILE("SingleCIE", section);
309 EXPECT_TRUE(section.GetContents(&contents));
319 CFISection section(kBigEndian, 4);
321 section
328 PERHAPS_WRITE_DEBUG_FRAME_FILE("OneFDE", section);
339 EXPECT_TRUE(section.GetContents(&contents));
349 CFISection section(kBigEndian, 4);
351 section
364 PERHAPS_WRITE_DEBUG_FRAME_FILE("TwoFDEsOneCIE", section);
382 EXPECT_TRUE(section.GetContents(&contents));
392 CFISection section(kLittleEndian, 8);
394 section
411 PERHAPS_WRITE_DEBUG_FRAME_FILE("TwoFDEsTwoCIEs", section);
431 EXPECT_TRUE(section.GetContents(&contents));
441 CFISection section(kBigEndian, 4);
443 section
458 PERHAPS_WRITE_DEBUG_FRAME_FILE("BadVersion", section);
475 EXPECT_TRUE(section.GetContents(&contents));
485 CFISection section(kBigEndian, 4);
487 section
502 PERHAPS_WRITE_DEBUG_FRAME_FILE("BadAugmentation", section);
519 EXPECT_TRUE(section.GetContents(&contents));
530 CFISection section(kBigEndian, 4);
532 section
543 PERHAPS_WRITE_DEBUG_FRAME_FILE("CIEVersion1ReturnColumn", section);
553 EXPECT_TRUE(section.GetContents(&contents));
564 CFISection section(kBigEndian, 4);
566 section
577 PERHAPS_WRITE_DEBUG_FRAME_FILE("CIEVersion3ReturnColumn", section);
587 EXPECT_TRUE(section.GetContents(&contents));
604 // Prepare SECTION to receive FDE instructions.
613 // appropriately for the section's address size.
617 // On return, SECTION is ready to have FDE instructions appended to
619 void StockCIEAndFDE(CFISection *section) {
621 if (section->AddressSize() == 4) {
626 assert(section->AddressSize() == 8);
633 (*section)
643 section->FDEHeader(cie_label, fde_start, fde_size);
657 // Run the contents of SECTION through a CallFrameInfo parser,
659 void ParseSection(CFISection *section, bool succeeds = true) {
661 EXPECT_TRUE(section->GetContents(&contents));
663 if (section->endianness() == kBigEndian)
666 assert(section->endianness() == kLittleEndian);
670 byte_reader.SetAddressSize(section->AddressSize());
693 CFISection section(kBigEndian, 4);
694 StockCIEAndFDE(&section);
695 section
702 PERHAPS_WRITE_DEBUG_FRAME_FILE("DW_CFA_set_loc", section);
710 ParseSection(&section);
714 CFISection section(kBigEndian, 8);
715 StockCIEAndFDE(&section);
716 section
723 PERHAPS_WRITE_DEBUG_FRAME_FILE("DW_CFA_advance_loc", section);
732 ParseSection(&section);
736 CFISection section(kLittleEndian, 8);
737 StockCIEAndFDE(&section);
738 section
743 PERHAPS_WRITE_DEBUG_FRAME_FILE("DW_CFA_advance_loc1", section);
752 ParseSection(&section);
756 CFISection section(kLittleEndian, 4);
757 StockCIEAndFDE(&section);
758 section
763 PERHAPS_WRITE_DEBUG_FRAME_FILE("DW_CFA_advance_loc2", section);
772 ParseSection(&section);
776 CFISection section(kBigEndian, 8);
777 StockCIEAndFDE(&section);
778 section
783 PERHAPS_WRITE_DEBUG_FRAME_FILE("DW_CFA_advance_loc4", section);
792 ParseSection(&section);
797 CFISection section(kBigEndian, 8);
798 StockCIEAndFDE(&section);
799 section
804 PERHAPS_WRITE_DEBUG_FRAME_FILE("DW_CFA_advance_loc8", section);
813 ParseSection(&section);
817 CFISection section(kLittleEndian, 4);
818 StockCIEAndFDE(&section);
819 section
823 PERHAPS_WRITE_DEBUG_FRAME_FILE("DW_CFA_def_cfa", section);
830 ParseSection(&section);
834 CFISection section(kBigEndian, 4);
835 StockCIEAndFDE(&section);
836 section
851 ParseSection(&section);
855 CFISection section(kLittleEndian, 8);
856 StockCIEAndFDE(&section);
857 section
866 ParseSection(&section);
872 CFISection section(kBigEndian, 4);
873 StockCIEAndFDE(&section);
874 section
885 ParseSection(&section);
889 CFISection section(kBigEndian, 4);
890 StockCIEAndFDE(&section);
891 section
901 ParseSection(&section);
905 CFISection section(kLittleEndian, 4);
906 StockCIEAndFDE(&section);
907 section
922 ParseSection(&section);
928 CFISection section(kBigEndian, 4);
929 StockCIEAndFDE(&section);
930 section
940 ParseSection(&section);
944 CFISection section(kLittleEndian, 8);
945 StockCIEAndFDE(&section);
946 section
955 ParseSection(&section);
959 CFISection section(kLittleEndian, 4);
960 StockCIEAndFDE(&section);
961 section
969 ParseSection(&section);
973 CFISection section(kLittleEndian, 4);
974 StockCIEAndFDE(&section);
975 section
983 ParseSection(&section);
987 CFISection section(kBigEndian, 4);
988 StockCIEAndFDE(&section);
989 section
998 ParseSection(&section);
1002 CFISection section(kBigEndian, 4);
1003 StockCIEAndFDE(&section);
1004 section
1013 ParseSection(&section);
1017 CFISection section(kBigEndian, 8);
1018 StockCIEAndFDE(&section);
1019 section
1036 ParseSection(&section);
1040 CFISection section(kBigEndian, 4);
1041 StockCIEAndFDE(&section);
1042 section
1052 ParseSection(&section);
1056 CFISection section(kBigEndian, 4);
1057 StockCIEAndFDE(&section);
1058 section
1073 ParseSection(&section);
1077 CFISection section(kLittleEndian, 8);
1078 StockCIEAndFDE(&section);
1079 section
1087 ParseSection(&section);
1091 CFISection section(kBigEndian, 8);
1092 StockCIEAndFDE(&section);
1093 section
1104 ParseSection(&section);
1108 CFISection section(kBigEndian, 4);
1109 StockCIEAndFDE(&section);
1110 section
1121 ParseSection(&section);
1125 CFISection section(kLittleEndian, 8);
1133 section
1178 ParseSection(&section);
1182 CFISection section(kBigEndian, 4);
1190 section
1227 ParseSection(&section);
1231 CFISection section(kBigEndian, 4);
1239 section
1287 ParseSection(&section);
1291 CFISection section(kLittleEndian, 8);
1292 StockCIEAndFDE(&section);
1304 section
1360 ParseSection(&section);
1365 CFISection section(kBigEndian, 4);
1366 StockCIEAndFDE(&section);
1368 section
1385 ParseSection(&section);
1389 CFISection section(kLittleEndian, 4);
1390 StockCIEAndFDE(&section);
1391 section
1402 ParseSection(&section);
1406 CFISection section(kBigEndian, 4);
1407 StockCIEAndFDE(&section);
1408 section
1427 ParseSection(&section);
1431 CFISection section(kLittleEndian, 8);
1432 StockCIEAndFDE(&section);
1433 section
1444 ParseSection(&section);
1448 CFISection section(kLittleEndian, 4);
1449 StockCIEAndFDE(&section);
1450 section
1461 ParseSection(&section);
1466 CFISection section(kBigEndian, 4);
1468 section
1517 ParseSection(&section);
1522 CFISection section(kLittleEndian, 8);
1523 StockCIEAndFDE(&section);
1524 section
1534 ParseSection(&section, false);
1540 CFISection section(kLittleEndian, 4);
1541 StockCIEAndFDE(&section);
1542 section
1553 ParseSection(&section);
1557 CFISection section(kLittleEndian, 4);
1558 StockCIEAndFDE(&section);
1559 section
1576 ParseSection(&section);
1580 CFISection section(kLittleEndian, 4);
1581 StockCIEAndFDE(&section);
1582 section
1593 ParseSection(&section);
1597 CFISection section(kLittleEndian, 4);
1598 StockCIEAndFDE(&section);
1599 section
1616 ParseSection(&section);
1620 CFISection section(kLittleEndian, 4);
1621 StockCIEAndFDE(&section);
1622 section
1634 ParseSection(&section);
1638 CFISection section(kLittleEndian, 4);
1639 StockCIEAndFDE(&section);
1640 section
1659 ParseSection(&section);
1663 CFISection section(kLittleEndian, 4);
1664 StockCIEAndFDE(&section);
1665 section
1685 ParseSection(&section);
1689 CFISection section(kLittleEndian, 4);
1690 StockCIEAndFDE(&section);
1691 section
1703 ParseSection(&section);
1707 CFISection section(kLittleEndian, 4);
1708 StockCIEAndFDE(&section);
1709 section
1728 ParseSection(&section);
1732 CFISection section(kLittleEndian, 4);
1733 StockCIEAndFDE(&section);
1734 section
1754 ParseSection(&section);
1758 CFISection section(kLittleEndian, 4);
1759 StockCIEAndFDE(&section);
1760 section
1771 ParseSection(&section);
1775 CFISection section(kLittleEndian, 4);
1776 StockCIEAndFDE(&section);
1777 section
1795 ParseSection(&section);
1799 CFISection section(kLittleEndian, 4);
1800 StockCIEAndFDE(&section);
1801 section
1820 ParseSection(&section);
1824 CFISection section(kLittleEndian, 4);
1825 StockCIEAndFDE(&section);
1826 section
1837 ParseSection(&section);
1841 CFISection section(kLittleEndian, 4);
1842 StockCIEAndFDE(&section);
1843 section
1861 ParseSection(&section);
1865 CFISection section(kLittleEndian, 4);
1866 StockCIEAndFDE(&section);
1867 section
1887 ParseSection(&section);
1891 CFISection section(kLittleEndian, 4);
1892 StockCIEAndFDE(&section);
1893 section
1905 ParseSection(&section);
1909 CFISection section(kLittleEndian, 4);
1910 StockCIEAndFDE(&section);
1911 section
1921 PERHAPS_WRITE_DEBUG_FRAME_FILE("RestoreValExpressionRuleChanged", section);
1932 ParseSection(&section);
1936 CFISection section(kLittleEndian, 4);
1937 StockCIEAndFDE(&section);
1938 section
1950 section);
1963 ParseSection(&section);
1968 : CFIInsnFixture(), section(kBigEndian, 4, true) {
1972 section.SetEncodedPointerBases(encoded_pointer_bases);
1974 CFISection section;
1977 // Parse CFIInsnFixture::ParseSection, but parse the section as
1979 void ParseEHFrameSection(CFISection *section, bool succeeds = true) {
1980 EXPECT_TRUE(section->ContainsEHFrame());
1982 EXPECT_TRUE(section->GetContents(&contents));
1984 if (section->endianness() == kBigEndian)
1987 assert(section->endianness() == kLittleEndian);
1991 byte_reader.SetAddressSize(section->AddressSize());
2010 section
2024 PERHAPS_WRITE_EH_FRAME_FILE("EHFrame.Terminator", section);
2037 ParseEHFrameSection(&section);
2050 section.SetPointerEncoding(fde_encoding);
2051 section.SetEncodedPointerBases(encoded_pointer_bases);
2053 section
2072 PERHAPS_WRITE_EH_FRAME_FILE("EHFrame.SimpleFDE", section);
2089 ParseEHFrameSection(&section);
2095 section
2107 PERHAPS_WRITE_EH_FRAME_FILE("EHFrame.EmptyZ", section);
2118 ParseEHFrameSection(&section);
2124 section
2136 PERHAPS_WRITE_EH_FRAME_FILE("EHFrame.BadZ", section);
2141 ParseEHFrameSection(&section, false);
2149 section
2162 PERHAPS_WRITE_EH_FRAME_FILE("EHFrame.zL", section);
2171 ParseEHFrameSection(&section);
2179 section
2191 PERHAPS_WRITE_EH_FRAME_FILE("EHFrame.zP", section);
2200 ParseEHFrameSection(&section);
2208 section.SetPointerEncoding(pointer_encoding);
2209 section
2220 PERHAPS_WRITE_EH_FRAME_FILE("EHFrame.zR", section);
2227 ParseEHFrameSection(&section);
2232 section
2242 PERHAPS_WRITE_EH_FRAME_FILE("EHFrame.zS", section);
2251 ParseEHFrameSection(&section);
2256 section name") { }
2321 using google_breakpad::test_assembler::Section;
2347 .D32(header.link) // link to related section
2374 .Address(section_table_offset) // section header offset
2379 .D16(elf_class == ELFCLASS32 ? 40 : 64) // section header entry size
2380 .D16(3) // section count
2381 .D16(1) // section name string table
2384 // The null section. Every ELF file has one, as the first entry in
2385 // the section header table.
2390 // The CFI section. The whole reason for writing out this ELF file
2396 // The section holding the names of the sections. This is the
2397 // section whose index appears in the e_shstrndx member of the ELF
2410 // Create the section table. The ELF header's e_shoff member refers
2418 // Append the section table and the section contents to the ELF file.