xref: /llvm-project/llvm/test/CodeGen/MSP430/build-attrs.ll (revision 6cfb4d46bae1b571a56e530f0365fb0f3e3799da)
1*6cfb4d46SJozef Lawrynowicz; Test that the -mcpu= option sets the correct ELF build attributes.
2*6cfb4d46SJozef Lawrynowicz
3*6cfb4d46SJozef Lawrynowicz; RUN: llc -mtriple=msp430 -filetype=obj < %s \
4*6cfb4d46SJozef Lawrynowicz; RUN:   | llvm-readelf -A - | FileCheck %s --check-prefixes COMMON,MSP430,SMALL
5*6cfb4d46SJozef Lawrynowicz; RUN: llc -mtriple=msp430 -mcpu=generic -filetype=obj < %s \
6*6cfb4d46SJozef Lawrynowicz; RUN:   | llvm-readelf -A - | FileCheck %s --check-prefixes COMMON,MSP430,SMALL
7*6cfb4d46SJozef Lawrynowicz; RUN: llc -mtriple=msp430 -mcpu=msp430 -filetype=obj < %s \
8*6cfb4d46SJozef Lawrynowicz; RUN:   | llvm-readelf -A - | FileCheck %s --check-prefixes COMMON,MSP430,SMALL
9*6cfb4d46SJozef Lawrynowicz; RUN: llc -mtriple=msp430 -mcpu=msp430x -filetype=obj < %s \
10*6cfb4d46SJozef Lawrynowicz; RUN:   | llvm-readelf -A - | FileCheck %s --check-prefixes COMMON,MSP430X,SMALL
11*6cfb4d46SJozef Lawrynowicz
12*6cfb4d46SJozef Lawrynowicz; COMMON: BuildAttributes {
13*6cfb4d46SJozef Lawrynowicz; COMMON: FormatVersion: 0x41
14*6cfb4d46SJozef Lawrynowicz; COMMON:   SectionLength: 22
15*6cfb4d46SJozef Lawrynowicz; COMMON:   Vendor: mspabi
16*6cfb4d46SJozef Lawrynowicz; COMMON:   Tag: Tag_File (0x1)
17*6cfb4d46SJozef Lawrynowicz; COMMON:   Size: 11
18*6cfb4d46SJozef Lawrynowicz
19*6cfb4d46SJozef Lawrynowicz; MSP430:      Tag: 4
20*6cfb4d46SJozef Lawrynowicz; MSP430-NEXT: Value: 1
21*6cfb4d46SJozef Lawrynowicz; MSP430-NEXT: TagName: ISA
22*6cfb4d46SJozef Lawrynowicz; MSP430-NEXT: Description: MSP430
23*6cfb4d46SJozef Lawrynowicz
24*6cfb4d46SJozef Lawrynowicz; MSP430X:      Tag: 4
25*6cfb4d46SJozef Lawrynowicz; MSP430X-NEXT: Value: 2
26*6cfb4d46SJozef Lawrynowicz; MSP430X-NEXT: TagName: ISA
27*6cfb4d46SJozef Lawrynowicz; MSP430X-NEXT: Description: MSP430X
28*6cfb4d46SJozef Lawrynowicz
29*6cfb4d46SJozef Lawrynowicz; SMALL:      Tag: 6
30*6cfb4d46SJozef Lawrynowicz; SMALL-NEXT: Value: 1
31*6cfb4d46SJozef Lawrynowicz; SMALL-NEXT: TagName: Code_Model
32*6cfb4d46SJozef Lawrynowicz; SMALL-NEXT: Description: Small
33*6cfb4d46SJozef Lawrynowicz
34*6cfb4d46SJozef Lawrynowicz; SMALL:      Tag: 8
35*6cfb4d46SJozef Lawrynowicz; SMALL-NEXT: Value: 1
36*6cfb4d46SJozef Lawrynowicz; SMALL-NEXT: TagName: Data_Model
37*6cfb4d46SJozef Lawrynowicz; SMALL-NEXT: Description: Small
38*6cfb4d46SJozef Lawrynowicz
39*6cfb4d46SJozef Lawrynowiczdefine void @foo() {
40*6cfb4d46SJozef Lawrynowicz  ret void
41*6cfb4d46SJozef Lawrynowicz}
42