xref: /llvm-project/llvm/test/tools/llvm-readobj/ELF/note-amd-invalid-v3.test (revision ab930ee7cad8b8bf7968bb8d0c0d72524e2313c4)
1## This test is checking the handling of invalid/malformed note entries for
2## AMDGPU code object v3.
3
4# RUN: yaml2obj %s -o %t.o
5# RUN: llvm-readobj --notes %t.o | FileCheck %s --match-full-lines --check-prefix=LLVM
6# RUN: llvm-readelf --notes %t.o | FileCheck %s --match-full-lines --check-prefix=GNU
7
8# LLVM:       NoteSections [
9# LLVM-NEXT:    NoteSection {
10# LLVM-NEXT:      Name: .note.nt_amdgpu_metadata
11# LLVM-NEXT:      Offset: 0x40
12# LLVM-NEXT:      Size: 0x38
13# LLVM-NEXT:      Notes [
14# LLVM-NEXT:      {
15# LLVM-NEXT:        Owner: AMDGPU
16# LLVM-NEXT:        Data size: 0x24
17# LLVM-NEXT:        Type: NT_AMDGPU_METADATA (AMDGPU Metadata)
18# LLVM-NEXT:        AMDGPU Metadata: Invalid AMDGPU Metadata
19# LLVM-NEXT:  ---
20# LLVM-NEXT: amdhsa.kernels:
21# LLVM-NEXT:  - .name:           test_kernel
22# LLVM-NEXT:  ...
23# LLVM-EMPTY:
24# LLVM-NEXT:      }
25# LLVM-NEXT:     ]
26# LLVM-NEXT:    }
27# LLVM-NEXT:  ]
28
29# GNU:      Displaying notes found in: .note.nt_amdgpu_metadata
30# GNU-NEXT:   Owner                Data size        Description
31# GNU-NEXT:   AMDGPU               0x00000024       NT_AMDGPU_METADATA (AMDGPU Metadata)
32# GNU-NEXT:     AMDGPU Metadata:
33# GNU-NEXT:         Invalid AMDGPU Metadata
34# GNU-NEXT: ---
35# GNU-NEXT: amdhsa.kernels:
36# GNU-NEXT:  - .name:           test_kernel
37# GNU-NEXT: ...
38
39--- !ELF
40FileHeader:
41  Class: ELFCLASS64
42  Data:  ELFDATA2LSB
43  Type:  ET_REL
44Sections:
45  - Name:     .note.nt_amdgpu_metadata
46    Type:     SHT_NOTE
47    Notes:
48      - Name: AMDGPU
49        Type: NT_AMDGPU_METADATA
50        ## Desc contains 'amdhsa.kernels' without valid entries.
51        Desc: '81ae616d646873612e6b65726e656c739181a52e6e616d65ab746573745f6b65726e656c'
52