xref: /llvm-project/llvm/test/MC/AVR/elf_header.s (revision 366d34b39e432abff724f644adbff8d627d6f27c)
1*366d34b3SBen Shi; RUN: llvm-mc -filetype=obj -triple avr -mcpu=at90s8515 %s -o - \
2*366d34b3SBen Shi; RUN:     | llvm-readobj -h - | FileCheck --check-prefixes=ALL,AVR2 %s
3*366d34b3SBen Shi; RUN: llvm-mc -filetype=obj -triple avr -mcpu=attiny13a %s -o - \
4*366d34b3SBen Shi; RUN:     | llvm-readobj -h - | FileCheck --check-prefixes=ALL,AVR25 %s
5*366d34b3SBen Shi; RUN: llvm-mc -filetype=obj -triple avr -mcpu=attiny167 %s -o - \
6*366d34b3SBen Shi; RUN:     | llvm-readobj -h - | FileCheck --check-prefixes=ALL,AVR35 %s
7*366d34b3SBen Shi; RUN: llvm-mc -filetype=obj -triple avr -mcpu=atmega88 %s -o - \
8*366d34b3SBen Shi; RUN:     | llvm-readobj -h - | FileCheck --check-prefixes=ALL,AVR4 %s
9*366d34b3SBen Shi; RUN: llvm-mc -filetype=obj -triple avr -mcpu=atmega16 %s -o - \
10*366d34b3SBen Shi; RUN:     | llvm-readobj -h - | FileCheck --check-prefixes=ALL,AVR5 %s
11*366d34b3SBen Shi; RUN: llvm-mc -filetype=obj -triple avr -mcpu=atmega128 %s -o - \
12*366d34b3SBen Shi; RUN:     | llvm-readobj -h - | FileCheck --check-prefixes=ALL,AVR51 %s
13*366d34b3SBen Shi; RUN: llvm-mc -filetype=obj -triple avr -mcpu=attiny817 %s -o - \
14*366d34b3SBen Shi; RUN:     | llvm-readobj -h - | FileCheck --check-prefixes=ALL,XM3 %s
15*366d34b3SBen Shi; RUN: llvm-mc -filetype=obj -triple avr -mcpu=atxmega256a3u %s -o - \
16*366d34b3SBen Shi; RUN:     | llvm-readobj -h - | FileCheck --check-prefixes=ALL,XM6 %s
17*366d34b3SBen Shi; RUN: llvm-mc -filetype=obj -triple avr -mcpu=atxmega256a3u %s -o - \
18*366d34b3SBen Shi; RUN:     | llvm-readobj -h - | FileCheck --check-prefixes=ALL,XM6 %s
19*366d34b3SBen Shi; RUN: llvm-mc -filetype=obj -triple avr -mcpu=attiny10 %s -o - \
20*366d34b3SBen Shi; RUN:     | llvm-readobj -h - | FileCheck --check-prefixes=ALL,TINY %s
21*366d34b3SBen Shi
22*366d34b3SBen Shi; ALL:       ElfHeader {
23*366d34b3SBen Shi; ALL-NEXT:    Ident {
24*366d34b3SBen Shi; ALL-NEXT:      Magic: (7F 45 4C 46)
25*366d34b3SBen Shi; ALL-NEXT:      Class: 32-bit (0x1)
26*366d34b3SBen Shi; ALL-NEXT:      DataEncoding: LittleEndian (0x1)
27*366d34b3SBen Shi; ALL-NEXT:      FileVersion: 1
28*366d34b3SBen Shi; ALL-NEXT:      OS/ABI: SystemV (0x0)
29*366d34b3SBen Shi; ALL-NEXT:      ABIVersion: 0
30*366d34b3SBen Shi; ALL-NEXT:      Unused: (00 00 00 00 00 00 00)
31*366d34b3SBen Shi; ALL-NEXT:    }
32*366d34b3SBen Shi; ALL-NEXT:    Type: Relocatable (0x1)
33*366d34b3SBen Shi; ALL-NEXT:    Machine: EM_AVR (0x53)
34*366d34b3SBen Shi; ALL-NEXT:    Version: 1
35*366d34b3SBen Shi; ALL-NEXT:    Entry: 0x0
36*366d34b3SBen Shi; ALL-NEXT:    ProgramHeaderOffset: 0x0
37*366d34b3SBen Shi; ALL-NEXT:    SectionHeaderOffset: 0x5C
38*366d34b3SBen Shi
39*366d34b3SBen Shi; AVR2:        Flags [ (0x82)
40*366d34b3SBen Shi; AVR2-NEXT:     EF_AVR_ARCH_AVR2 (0x2)
41*366d34b3SBen Shi
42*366d34b3SBen Shi; AVR25:       Flags [ (0x99)
43*366d34b3SBen Shi; AVR25-NEXT:    EF_AVR_ARCH_AVR25 (0x19)
44*366d34b3SBen Shi
45*366d34b3SBen Shi; AVR35:       Flags [ (0xA3)
46*366d34b3SBen Shi; AVR35-NEXT:    EF_AVR_ARCH_AVR35 (0x23)
47*366d34b3SBen Shi
48*366d34b3SBen Shi; AVR4:        Flags [ (0x84)
49*366d34b3SBen Shi; AVR4-NEXT:     EF_AVR_ARCH_AVR4 (0x4)
50*366d34b3SBen Shi
51*366d34b3SBen Shi; AVR5:        Flags [ (0x85)
52*366d34b3SBen Shi; AVR5-NEXT:     EF_AVR_ARCH_AVR5 (0x5)
53*366d34b3SBen Shi
54*366d34b3SBen Shi; AVR51:       Flags [ (0xB3)
55*366d34b3SBen Shi; AVR51-NEXT:    EF_AVR_ARCH_AVR51 (0x33)
56*366d34b3SBen Shi
57*366d34b3SBen Shi; XM3:         Flags [ (0xE7)
58*366d34b3SBen Shi; XM3-NEXT:      EF_AVR_ARCH_XMEGA3 (0x67)
59*366d34b3SBen Shi
60*366d34b3SBen Shi; XM6:         Flags [ (0xEA)
61*366d34b3SBen Shi; XM6-NEXT:      EF_AVR_ARCH_XMEGA6 (0x6A)
62*366d34b3SBen Shi
63*366d34b3SBen Shi; TINY:        Flags [ (0xE4)
64*366d34b3SBen Shi; TINY-NEXT:     EF_AVR_ARCH_AVRTINY (0x64)
65*366d34b3SBen Shi
66*366d34b3SBen Shi; ALL:           EF_AVR_LINKRELAX_PREPARED (0x80)
67*366d34b3SBen Shi; ALL-NEXT:    ]
68*366d34b3SBen Shi; ALL-NEXT:    HeaderSize: 52
69*366d34b3SBen Shi; ALL-NEXT:    ProgramHeaderEntrySize: 0
70*366d34b3SBen Shi; ALL-NEXT:    ProgramHeaderCount: 0
71*366d34b3SBen Shi; ALL-NEXT:    SectionHeaderEntrySize: 40
72*366d34b3SBen Shi; ALL-NEXT:    SectionHeaderCount: 4
73*366d34b3SBen Shi; ALL-NEXT:    StringTableSectionIndex: 1
74*366d34b3SBen Shi; ALL-NEXT:  }
75