Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use yaml2obj for llvm-cov tests to see covmap #115886

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file not shown.
160 changes: 160 additions & 0 deletions llvm/test/tools/llvm-cov/Inputs/branch-c-general.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,160 @@
--- !ELF
FileHeader:
Class: ELFCLASS32
Data: ELFDATA2LSB
Type: ET_REL
Machine: EM_ARM
Flags: [ EF_ARM_EABI_VER5 ]
SectionHeaderStringTable: .strtab
Sections:
- Name: '__llvm_covfun (7)'
Type: SHT_PROGBITS
AddressAlign: 0x8
Content: D7878914FBE99B075B000000D136449C106D04009FD374D96F4D6D1A01000401050109010D010D0D010715080203020F0016200501000F0016050018001B05001C009D8080800805001D010407020A000F200901000A000F09001001858080800809010500080F010600080F00100018200D0100100018
- Name: '__llvm_covfun (4)'
Type: SHT_PROGBITS
AddressAlign: 0x8
Content: 83AD05A5F1438E684401000052D33558163C11449FD374D96F4D6D1A01001401050509090D05090509050946110509111546110509461105094611050942194611050921252D312C0111150E02030113001A2005010013001A05001C001F05002000A1808080080500210B04050109000E2009460009000E09000F009080808008090010020609010B000C200D0A000B000C0D000D008E808080080D000E0010460106008C8080800846000C0406460010001520114200100015110016009780808008110017020611010B000C201522000B000C15000D008E8080800815000E0010420106008C8080800842000C020642010B000C20193E000B000C19000D008E8080800819000E0010050309000A050009000F2000000009000A21000E000F20254A000E000F1D00100091808080081D00110013050109000A050009000F2000000009000A2D000E000F204E31000E000F2900100091808080082900110013
- Name: '__llvm_covfun (5)'
Type: SHT_PROGBITS
AddressAlign: 0x8
Content: 0449C70428C57369320100003D5C2D0E4B13F9279FD374D96F4D6D1A01001C01050B0D0109010D090D090D090D090D2611090D0115011901195B1D01195B1D01195B1D01195B1D01195B1D0119011D011D011D6E21011D260121141802010307000820050200070008050009008A8080800805000A000C06020A001120090E000A00110900120093808080080900130604090209000F200D260009000F0D00100187808080080D0107000C26000C0185808080082601050204260009000E2011220009000E11000F018780808008110107000F010307000820152A00070008150009008A8080800815000A000C5B020605045B0109000F201D560009000F1D00100187808080081D0107000D56000D008E8080800856000E028780808008560207000A56010C001320196E000C00136E020302026E0007000820216A00070008210009008A8080800821000A000C
- Name: '__llvm_covfun (3)'
Type: SHT_PROGBITS
AddressAlign: 0x8
Content: 55947829059F255EDE0100001B9C495D3463E1D09FD374D96F4D6D1A01001F010500090D111915191D1915292D292D292D732D29394A31732D293941453D453D414A31732D29396A316F2D7351293966496A316F2D73512939004D515542013B0E2F0201030F0014200502000F0014000016001905001A009B8080800805001B04040003050104000009000A2009060009000A09000B008C8080800809000C000E0D0301030D0D0107000820110A00070008110009008A8080800811000A000C000403210219000A000B201516000A000B15000C008D8080800815000D03041901030204190109000A201D120009000A1D000B008C808080081D000C000E160303000D21000D0181808080082101011B022501011A022901011902290207000C202D220007000C2D000D0185808080082D0105000F22000F02838080800822020314024A000A000F203146000A000F3100100091808080083100110A0435010309040001100691808080083D01050111203D3B0005000B410205011220413F0005000B45020501112045430005000B460503080266000F0015204962000F0015510017001A49001B009C8080800849001C06045101140383808080080002050304000009000A204D760009000A4D000B008C808080084D000C000E5101030204510109000A20557A0009000A55000B008C8080800855000C000E
- Name: '__llvm_covfun (9)'
Type: SHT_PROGBITS
AddressAlign: 0x8
Content: 7129CA3C268292BFC00100003E688383C9A099009FD374D96F4D6D1A01002507390B250511030D173911251F41232D1D251519151D3341372D1525151D7721151D4B41772D151D252973417725151D2D31393D3541732D7725151D35418301453541030D030D920149030D38016C112502000417028A80808008090103010A2009000003000A05010A0383808080080503031C0203003F0046200D9201003F0046130048004B0D004C00CD808080080D004D1704000119148F80808008150105130F20151B0005000B15010B000C201926000B000C19000D008E8080800819000E0010770205020C201D2F0005000B77010B000C20213E000B000C21000D008E8080800821000E0010250205020F2025470005000B25010B000C202952000B000C29000D008E8080800829000E00102D02050A0F202D570005000B2D010B000C203162000B000C31000D008E8080800831000E001000011203918080800839010702112039000007001339010D000E203D66000D000E3D000F0090808080083D0010001235011103858080800883010305020F350005020F20416F0005000C8301010B001720457E000B0017450018018980808008450109000F92010503020292010007001120498E01000700114900120093808080084900130015
- Name: '__llvm_covfun (8)'
Type: SHT_PROGBITS
AddressAlign: 0x8
Content: 3F4D1C6E6087417BB0010000D6FF56B8865A69B69FD374D96F4D6D1A01002F010903050F3D1335172D1B25151D0D110D152B3D2F35332D37250D1D0D15B701190D154B3D4F35532DB701250D151D21633D6735B3012DB7011D0D1525297B3DAF0135B30125B7011D0D152D31AB013DAF012DB30125B7011D0D153539AB0135AF012DB30125B7011D0D153D4131019301131F0203011300192005060013001909001B001E05001F00A0808080080500201C04000115198C808080080D0105180C200D0B000500120D010B000C20111E000B000C11000D008E8080800811000E0010B7010205020C20152700050012B701010B000C20193E000B000C19000D008E8080800819000E00101D0205020C201D47000500201D010B000C20215A000B000C21000D008E8080800821000E0010250405020C20255F0005001325010B000C202972000B000C29000D008E8080800829000E00102D0205020C202D77000500212D010B000C20318A01000B000C31000D008E8080800831000E0010350405020C20358F010005002735010B000C2039A201000B000C39000D008E8080800839000E00103D0205020C203DA7010005000C3D010B000C2041BA01000B000C41000D008E8080800841000E0010
- Name: '__llvm_covfun (2)'
Type: SHT_PROGBITS
AddressAlign: 0x8
Content: 59A48AA8899AA358C100000091E33C8FF36C04009FD374D96F4D6D1A01000B01050509090D0511111505212125191D05313135292D1C01B4011A0C02030213001A2005010013001A05001C001F05002000A1808080080500210804050109000E2006090009000E0900120013200A0D00120013050209000E20110E0009000E110012001320151200120013050209000E05000900172016210009000E2100120017201A250012001719001B001C201E1D001B001C050209000E05000900172031220009000E31001200172035260012001729001B001C202D2A001B001C
- Name: __llvm_covfun
Type: SHT_PROGBITS
AddressAlign: 0x8
Content: F5953D044B505D13D20000005FD132562FE71EAC9FD374D96F4D6D1A01001201050309090D011101111B1501111519011D011D2F21011D212501290129432D01292D311D01C201150D0203030A000B03000A0015200906000A000B09000F0015200D0A000F001505001601858080800805010500081B020A00111B000A001C201615000A0011150015001C201E190015001C11001D01858080800811010500082F021100122F0011001C20212A00110012210016001C2025320016001C1D001E00211D0022002343020A001143000A001C203E2D000A00112D0015001C2046310015001C29001E00212900220023
- Name: '__llvm_covfun (6)'
Type: SHT_PROGBITS
AddressAlign: 0x8
Content: 20E5C369BDF15C7936000000D0D60000000000009FD374D96F4D6D1A0100030105010901090701D1011D0702200502030B00110500120094808080080500140015020018001920090A020B000C0A00100011
- Name: '__llvm_covfun (1)'
Type: SHT_PROGBITS
AddressAlign: 0x8
Content: 7DE8E7C47096EB427A00000092EAF0986287F0789FD374D96F4D6D1A01000C0105050905092B0D05092B0D05092B0D05092B0D0509050D0F01DA01170B0203011300192005010013001905001B001E05001F00A08080800805002009042B020806062B040B0010200D26000B00100D00110092808080080D00120017260017018780808008260107010626010E001320092E000E0013
- Name: '__llvm_covfun (10)'
Type: SHT_PROGBITS
AddressAlign: 0x8
Content: FAD58DE7366495DB0A00000018000000000000009FD374D96F4D6D1A0100000101F501280F02
- Name: '__llvm_covfun (11)'
Type: SHT_PROGBITS
AddressAlign: 0x8
Content: 4CB4F49D6737EBF92B000000D1460000000000009FD374D96F4D6D1A01000101050601E7011B030203011300192005010013001905001B001E05001F00A0808080080500200104
- Name: __llvm_covmap
Type: SHT_PROGBITS
AddressAlign: 0x8
Content: 000000001B0000000000000003000000011800172F746D702F6272616E63682D632D67656E6572616C2E6300
- Name: __llvm_prf_names
Type: SHT_PROGBITS
AddressAlign: 0x1
Content: A6010073696D706C655F6C6F6F707301636F6E646974696F6E616C73016561726C795F6578697473016A756D7073017377697463686573016269675F73776974636801626F6F6C65616E5F6F70657261746F727301626F6F6C6F705F6C6F6F707301636F6E646974696F6E616C5F6F70657261746F7201646F5F66616C6C7468726F756768016D61696E016272616E63682D632D67656E6572616C2E633A7374617469635F66756E63
- Type: SectionHeaderTable
Sections:
- Name: .strtab
- Name: '__llvm_covfun (7)'
- Name: '__llvm_covfun (4)'
- Name: '__llvm_covfun (5)'
- Name: '__llvm_covfun (3)'
- Name: '__llvm_covfun (9)'
- Name: '__llvm_covfun (8)'
- Name: '__llvm_covfun (2)'
- Name: __llvm_covfun
- Name: '__llvm_covfun (6)'
- Name: '__llvm_covfun (1)'
- Name: '__llvm_covfun (10)'
- Name: '__llvm_covfun (11)'
- Name: __llvm_covmap
- Name: __llvm_prf_names
- Name: .symtab
Symbols:
- Name: __llvm_prf_names
Type: STT_SECTION
Section: __llvm_prf_names
- Name: __covrec_135D504B043D95F5u
Type: STT_OBJECT
Section: __llvm_covfun
Binding: STB_WEAK
Size: 0xEE
Other: [ STV_HIDDEN ]
- Name: __covrec_42EB9670C4E7E87Du
Type: STT_OBJECT
Section: '__llvm_covfun (1)'
Binding: STB_WEAK
Size: 0x96
Other: [ STV_HIDDEN ]
- Name: __covrec_58A39A89A88AA459u
Type: STT_OBJECT
Section: '__llvm_covfun (2)'
Binding: STB_WEAK
Size: 0xDD
Other: [ STV_HIDDEN ]
- Name: __covrec_5E259F0529789455u
Type: STT_OBJECT
Section: '__llvm_covfun (3)'
Binding: STB_WEAK
Size: 0x1FA
Other: [ STV_HIDDEN ]
- Name: __covrec_688E43F1A505AD83u
Type: STT_OBJECT
Section: '__llvm_covfun (4)'
Binding: STB_WEAK
Size: 0x160
Other: [ STV_HIDDEN ]
- Name: __covrec_6973C52804C74904u
Type: STT_OBJECT
Section: '__llvm_covfun (5)'
Binding: STB_WEAK
Size: 0x14E
Other: [ STV_HIDDEN ]
- Name: __covrec_795CF1BD69C3E520u
Type: STT_OBJECT
Section: '__llvm_covfun (6)'
Binding: STB_WEAK
Size: 0x52
Other: [ STV_HIDDEN ]
- Name: __covrec_79BE9FB148987D7u
Type: STT_OBJECT
Section: '__llvm_covfun (7)'
Binding: STB_WEAK
Size: 0x77
Other: [ STV_HIDDEN ]
- Name: __covrec_7B4187606E1C4D3Fu
Type: STT_OBJECT
Section: '__llvm_covfun (8)'
Binding: STB_WEAK
Size: 0x1CC
Other: [ STV_HIDDEN ]
- Name: __covrec_BF9282263CCA2971u
Type: STT_OBJECT
Section: '__llvm_covfun (9)'
Binding: STB_WEAK
Size: 0x1DC
Other: [ STV_HIDDEN ]
- Name: __covrec_DB956436E78DD5FAu
Type: STT_OBJECT
Section: '__llvm_covfun (10)'
Binding: STB_WEAK
Size: 0x26
Other: [ STV_HIDDEN ]
- Name: __covrec_F9EB37679DF4B44Cu
Type: STT_OBJECT
Section: '__llvm_covfun (11)'
Binding: STB_WEAK
Size: 0x47
Other: [ STV_HIDDEN ]
...
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// RUN: llvm-profdata merge %S/Inputs/branch-logical-mixed.proftext -o %t.profdata
// RUN: llvm-cov show --show-branches=count %S/Inputs/branch-logical-mixed.o32l -instr-profile %t.profdata -path-equivalence=/tmp,%S %s | FileCheck %s
// RUN: llvm-cov report --show-branch-summary %S/Inputs/branch-logical-mixed.o32l -instr-profile %t.profdata -show-functions -path-equivalence=/tmp,%S %s | FileCheck %s -check-prefix=REPORT




#include <stdio.h>
#include <stdlib.h>
Expand Down Expand Up @@ -81,10 +81,3 @@ int main(int argc, char *argv[])
__llvm_profile_write_file();
return 0;
}

// REPORT: Name Regions Miss Cover Lines Miss Cover Branches Miss Cover
// REPORT-NEXT: ---
// REPORT-NEXT: _Z4funcii 77 9 88.31% 68 3 95.59% 80 32 60.00%
// REPORT-NEXT: main 1 0 100.00% 5 0 100.00% 0 0 0.00%
// REPORT-NEXT: ---
// REPORT-NEXT: TOTAL 78 9 88.46% 73 3 95.89% 80 32 60.00%
Binary file not shown.
50 changes: 50 additions & 0 deletions llvm/test/tools/llvm-cov/Inputs/branch-logical-mixed.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
--- !ELF
FileHeader:
Class: ELFCLASS32
Data: ELFDATA2LSB
Type: ET_REL
Machine: EM_ARM
Flags: [ EF_ARM_EABI_VER5 ]
SectionHeaderStringTable: .strtab
Sections:
- Name: __llvm_covfun
Type: SHT_PROGBITS
AddressAlign: 0x8
Content: F0A0ED2C305C0BB3C0030000F834CF5F518FC8834287299580773304010030012525291D2115190D110509014D4D5145493D4135392D31017D7D8101758501850189016D8D018D019101659501950199015D9D019D01A10155A501A501A90101D501D501D901CD01DD01DD01E101C501E501E501E901BD01ED01ED01F101B501F501F501F901AD01FD01FD018102018502018502018502018902018902018902018D02018D02018D020191020191020191027D010819430201080C000E01000C010E01000C020E01000C030E01000C040E202502000C000E25010C000E202906000C000E1D010C000E20210A000C000E15010C000E20190E000C000E0D010C000E201112000C000E05010C000E200916000C000E01020C000E01000C010E01000C020E01000C030E01000C040E201A4D000C000E4D010C000E201E51000C000E45010C000E202249000C000E3D010C000E202641000C000E35010C000E202A39000C000E2D010C000E202E31000C000E01020C011001000C031001000C051001000C071001000C091001000D000F207D32000D000F7D010D000F20810136000D000F75010C011075000D000F2085013A000D000F8501010D000F2089013E000D000F6D010C01106D000D000F208D0142000D000F8D01010D000F20910146000D000F65010C011065000D000F2095014A000D000F9501010D000F2099014E000D000F5D010C01105D000D000F209D0152000D000F9D01010D000F20A10156000D000F55010C011055000D000F20A5015A000D000FA501010D000F20A9015E000D000F01020C011001000C031001000C051001000C071001000C091001000D000F2062D501000D000FD501010D000F2066D901000D000FCD01010C0110CD01000D000F206ADD01000D000FDD01010D000F206EE101000D000FC501010C0110C501000D000F2072E501000D000FE501010D000F2076E901000D000FBD01010C0110BD01000D000F207AED01000D000FED01010D000F207EF101000D000FB501010C0110B501000D000F208201F501000D000FF501010D000F208601F901000D000FAD01010C0110AD01000D000F208A01FD01000D000FFD01010D000F208E018102000D000F01020700082085029A0100070008850200090185808080088502010500169A0100170285808080089A01020500160102070008208902A6010007000889020009018580808008890201050016A6010017028580808008A601020500160102070008208D02B201000700088D0200090185808080088D0201050016B2010017028580808008B201020500160102070008209102BE010007000891020009018580808008910201050016BE010017028580808008BE0102050016
- Name: '__llvm_covfun (1)'
Type: SHT_PROGBITS
AddressAlign: 0x8
Content: FAD58DE7366495DB090000001800000000000000428729958077330401000001014F010402
- Name: __llvm_covmap
Type: SHT_PROGBITS
AddressAlign: 0x8
Content: 00000000210000000000000003000000011E001D2F746D702F6272616E63682D6C6F676963616C2D6D697865642E637070000000
- Name: __llvm_prf_names
Type: SHT_PROGBITS
AddressAlign: 0x1
Content: 0E005F5A3466756E636969016D61696E
- Type: SectionHeaderTable
Sections:
- Name: .strtab
- Name: __llvm_covfun
- Name: '__llvm_covfun (1)'
- Name: __llvm_covmap
- Name: __llvm_prf_names
- Name: .symtab
Symbols:
- Name: __llvm_prf_names
Type: STT_SECTION
Section: __llvm_prf_names
- Name: __covrec_B30B5C302CEDA0F0u
Type: STT_OBJECT
Section: __llvm_covfun
Binding: STB_WEAK
Size: 0x3DC
Other: [ STV_HIDDEN ]
- Name: __covrec_DB956436E78DD5FAu
Type: STT_OBJECT
Section: '__llvm_covfun (1)'
Binding: STB_WEAK
Size: 0x25
Other: [ STV_HIDDEN ]
...
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// RUN: llvm-profdata merge %S/Inputs/branch-macros.proftext -o %t.profdata
// RUN: llvm-cov show --show-expansions --show-branches=count %S/Inputs/branch-macros.o32l -instr-profile %t.profdata -path-equivalence=/tmp,%S %s | FileCheck %s
// RUN: llvm-cov report --show-branch-summary %S/Inputs/branch-macros.o32l -instr-profile %t.profdata -show-functions -path-equivalence=/tmp,%S %s | FileCheck %s -check-prefix=REPORT




#define COND1 (a == b)
#define COND2 (a != b)
Expand Down Expand Up @@ -50,11 +50,3 @@ int main(int argc, char *argv[])
__llvm_profile_write_file();
return 0;
}

// REPORT: Name Regions Miss Cover Lines Miss Cover Branches Miss Cover
// REPORT-NEXT: ---
// REPORT-NEXT: _Z4funcii 28 4 85.71% 18 0 100.00% 30 14 53.33%
// REPORT-NEXT: _Z5func2ii 13 1 92.31% 8 0 100.00% 10 2 80.00%
// REPORT-NEXT: main 1 0 100.00% 6 0 100.00% 0 0 0.00%
// REPORT-NEXT: ---
// REPORT-NEXT: TOTAL 42 5 88.10% 32 0 100.00% 40 16 60.00%
Binary file removed llvm/test/tools/llvm-cov/Inputs/branch-macros.o32l
Binary file not shown.
Loading
Loading