1## Test that note values are interpreted correctly for FreeBSD core files. 2# RUN: yaml2obj %s -o %t.o 3# RUN: llvm-readelf --notes %t.o | FileCheck %s --check-prefix=GNU --strict-whitespace 4# RUN: llvm-readobj --notes %t.o | FileCheck %s --check-prefix=LLVM --strict-whitespace 5 6--- !ELF 7FileHeader: 8 Class: ELFCLASS64 9 Data: ELFDATA2LSB 10 Type: ET_CORE 11Sections: 12 - Name: .note.foo 13 Type: SHT_NOTE 14 Notes: 15 - Name: FreeBSD 16 Type: NT_FREEBSD_THRMISC 17 - Name: FreeBSD 18 Type: NT_FREEBSD_PROCSTAT_PROC 19 - Name: FreeBSD 20 Type: NT_FREEBSD_PROCSTAT_FILES 21 - Name: FreeBSD 22 Type: NT_FREEBSD_PROCSTAT_VMMAP 23 - Name: FreeBSD 24 Type: NT_FREEBSD_PROCSTAT_GROUPS 25 - Name: FreeBSD 26 Type: NT_FREEBSD_PROCSTAT_UMASK 27 - Name: FreeBSD 28 Type: NT_FREEBSD_PROCSTAT_RLIMIT 29 - Name: FreeBSD 30 Type: NT_FREEBSD_PROCSTAT_OSREL 31 - Name: FreeBSD 32 Type: NT_FREEBSD_PROCSTAT_PSSTRINGS 33 - Name: FreeBSD 34 Type: NT_FREEBSD_PROCSTAT_AUXV 35 - Name: FreeBSD 36 Type: 0x12345 37 - Name: .note.bar 38 Type: SHT_NOTE 39 Notes: 40 - Name: FreeBSD 41 Desc: 'aabbccddeeff' 42 Type: NT_PRPSINFO 43ProgramHeaders: 44 - Type: PT_NOTE 45 FirstSec: .note.foo 46 LastSec: .note.foo 47 - Type: PT_NOTE 48 FirstSec: .note.bar 49 LastSec: .note.bar 50 51# GNU: Displaying notes found at file offset 0x000000b0 with length 0x000000dc: 52# GNU-NEXT: Owner Data size Description 53# GNU-NEXT: FreeBSD 0x00000000 NT_THRMISC (thrmisc structure) 54# GNU-NEXT: FreeBSD 0x00000000 NT_PROCSTAT_PROC (proc data) 55# GNU-NEXT: FreeBSD 0x00000000 NT_PROCSTAT_FILES (files data) 56# GNU-NEXT: FreeBSD 0x00000000 NT_PROCSTAT_VMMAP (vmmap data) 57# GNU-NEXT: FreeBSD 0x00000000 NT_PROCSTAT_GROUPS (groups data) 58# GNU-NEXT: FreeBSD 0x00000000 NT_PROCSTAT_UMASK (umask data) 59# GNU-NEXT: FreeBSD 0x00000000 NT_PROCSTAT_RLIMIT (rlimit data) 60# GNU-NEXT: FreeBSD 0x00000000 NT_PROCSTAT_OSREL (osreldate data) 61# GNU-NEXT: FreeBSD 0x00000000 NT_PROCSTAT_PSSTRINGS (ps_strings data) 62# GNU-NEXT: FreeBSD 0x00000000 NT_PROCSTAT_AUXV (auxv data) 63# GNU-NEXT: FreeBSD 0x00000000 Unknown note type: (0x00012345) 64# GNU-EMPTY: 65# GNU-NEXT: Displaying notes found at file offset 0x0000018c with length 0x0000001c: 66# GNU-NEXT: Owner Data size Description 67# GNU-NEXT: FreeBSD 0x00000006 NT_PRPSINFO (prpsinfo structure) 68# GNU-NEXT: description data: aa bb cc dd ee ff 69# GNU-EMPTY: 70 71# LLVM: NoteSections [ 72# LLVM-NEXT: NoteSection { 73# LLVM-NEXT: Name: <?> 74# LLVM-NEXT: Offset: 0xB0 75# LLVM-NEXT: Size: 0xDC 76# LLVM-NEXT: Notes [ 77# LLVM-NEXT: { 78# LLVM-NEXT: Owner: FreeBSD 79# LLVM-NEXT: Data size: 0x0 80# LLVM-NEXT: Type: NT_THRMISC (thrmisc structure) 81# LLVM-NEXT: } 82# LLVM-NEXT: { 83# LLVM-NEXT: Owner: FreeBSD 84# LLVM-NEXT: Data size: 0x0 85# LLVM-NEXT: Type: NT_PROCSTAT_PROC (proc data) 86# LLVM-NEXT: } 87# LLVM-NEXT: { 88# LLVM-NEXT: Owner: FreeBSD 89# LLVM-NEXT: Data size: 0x0 90# LLVM-NEXT: Type: NT_PROCSTAT_FILES (files data) 91# LLVM-NEXT: } 92# LLVM-NEXT: { 93# LLVM-NEXT: Owner: FreeBSD 94# LLVM-NEXT: Data size: 0x0 95# LLVM-NEXT: Type: NT_PROCSTAT_VMMAP (vmmap data) 96# LLVM-NEXT: } 97# LLVM-NEXT: { 98# LLVM-NEXT: Owner: FreeBSD 99# LLVM-NEXT: Data size: 0x0 100# LLVM-NEXT: Type: NT_PROCSTAT_GROUPS (groups data) 101# LLVM-NEXT: } 102# LLVM-NEXT: { 103# LLVM-NEXT: Owner: FreeBSD 104# LLVM-NEXT: Data size: 0x0 105# LLVM-NEXT: Type: NT_PROCSTAT_UMASK (umask data) 106# LLVM-NEXT: } 107# LLVM-NEXT: { 108# LLVM-NEXT: Owner: FreeBSD 109# LLVM-NEXT: Data size: 0x0 110# LLVM-NEXT: Type: NT_PROCSTAT_RLIMIT (rlimit data) 111# LLVM-NEXT: } 112# LLVM-NEXT: { 113# LLVM-NEXT: Owner: FreeBSD 114# LLVM-NEXT: Data size: 0x0 115# LLVM-NEXT: Type: NT_PROCSTAT_OSREL (osreldate data) 116# LLVM-NEXT: } 117# LLVM-NEXT: { 118# LLVM-NEXT: Owner: FreeBSD 119# LLVM-NEXT: Data size: 0x0 120# LLVM-NEXT: Type: NT_PROCSTAT_PSSTRINGS (ps_strings data) 121# LLVM-NEXT: } 122# LLVM-NEXT: { 123# LLVM-NEXT: Owner: FreeBSD 124# LLVM-NEXT: Data size: 0x0 125# LLVM-NEXT: Type: NT_PROCSTAT_AUXV (auxv data) 126# LLVM-NEXT: } 127# LLVM-NEXT: { 128# LLVM-NEXT: Owner: FreeBSD 129# LLVM-NEXT: Data size: 0x0 130# LLVM-NEXT: Type: Unknown (0x00012345) 131# LLVM-NEXT: } 132# LLVM-NEXT: ] 133# LLVM-NEXT: } 134# LLVM-NEXT: NoteSection { 135# LLVM-NEXT: Name: <?> 136# LLVM-NEXT: Offset: 0x18C 137# LLVM-NEXT: Size: 0x1C 138# LLVM-NEXT: Notes [ 139# LLVM-NEXT: { 140# LLVM-NEXT: Owner: FreeBSD 141# LLVM-NEXT: Data size: 0x6 142# LLVM-NEXT: Type: NT_PRPSINFO (prpsinfo structure) 143# LLVM-NEXT: Description data ( 144# LLVM-NEXT: 0000: AABBCCDD EEFF |......| 145# LLVM-NEXT: ) 146# LLVM-NEXT: } 147# LLVM-NEXT: ] 148# LLVM-NEXT: } 149# LLVM-NEXT: ] 150