brintos

brintos / llvm-project-archived public Read only

0
0
Text · 8.5 KiB · 3f2fa60 Raw
400 lines · plain
1// RUN: llvm-mc -filetype=obj -triple arm-eabi %s -o - | llvm-readobj -S --symbols - | FileCheck %s2// Test that global variables and functions are assigned correct section.3	.text4	.syntax unified5	.eabi_attribute	67, "2.09"	@ Tag_conformance6	.eabi_attribute	6, 1	@ Tag_CPU_arch7	.eabi_attribute	8, 1	@ Tag_ARM_ISA_use8	.eabi_attribute	17, 1	@ Tag_ABI_PCS_GOT_use9	.eabi_attribute	20, 1	@ Tag_ABI_FP_denormal10	.eabi_attribute	21, 1	@ Tag_ABI_FP_exceptions11	.eabi_attribute	23, 3	@ Tag_ABI_FP_number_model12	.eabi_attribute	34, 1	@ Tag_CPU_unaligned_access13	.eabi_attribute	24, 1	@ Tag_ABI_align_needed14	.eabi_attribute	25, 1	@ Tag_ABI_align_preserved15	.eabi_attribute	38, 1	@ Tag_ABI_FP_16bit_format16	.eabi_attribute	18, 4	@ Tag_ABI_PCS_wchar_t17	.eabi_attribute	26, 2	@ Tag_ABI_enum_size18	.eabi_attribute	14, 0	@ Tag_ABI_PCS_R9_use19	.section	my_text.1,"ax",%progbits20	.globl	foo21	.p2align	222	.type	foo,%function23	.code	32                      @ @foo24foo:25	.fnstart26@ %bb.0:                                @ %entry27	ldr	r0, .LCPI0_028	ldr	r0, [r0]29	mov	pc, lr30	.p2align	231@ %bb.1:32.LCPI0_0:33	.long	b34.Lfunc_end0:35	.size	foo, .Lfunc_end0-foo36	.cantunwind37	.fnend38 39	.section	my_text.2,"ax",%progbits40	.globl	goo41	.p2align	242	.type	goo,%function43	.code	32                      @ @goo44goo:45	.fnstart46@ %bb.0:                                @ %entry47	.save	{r11, lr}48	push	{r11, lr}49	ldr	r0, .LCPI1_050	ldr	r1, .LCPI1_151	bl	zoo52	pop	{r11, lr}53	mov	pc, lr54	.p2align	255@ %bb.1:56.LCPI1_0:57	.long	_ZL1g58.LCPI1_1:59	.long	_ZZ3gooE7lstat_h60.Lfunc_end1:61	.size	goo, .Lfunc_end1-goo62	.cantunwind63	.fnend64 65	.text66	.globl	hoo67	.p2align	268	.type	hoo,%function69	.code	32                      @ @hoo70hoo:71	.fnstart72@ %bb.0:                                @ %entry73	ldr	r0, .LCPI2_074	ldr	r0, [r0]75	mov	pc, lr76	.p2align	277@ %bb.1:78.LCPI2_0:79	.long	b80.Lfunc_end2:81	.size	hoo, .Lfunc_end2-hoo82	.cantunwind83	.fnend84 85	.type	a,%object               @ @a86	.section	my_bss.1,"aw",%nobits87	.globl	a88	.p2align	289a:90	.long	0                       @ 0x091	.size	a, 492 93	.type	b,%object               @ @b94	.section	my_data.1,"aw",%progbits95	.globl	b96	.p2align	297b:98	.long	1                       @ 0x199	.size	b, 4100 101	.type	c,%object               @ @c102	.section	my_bss.1,"aw",%nobits103	.globl	c104	.p2align	2105c:106	.zero	16107	.size	c, 16108 109	.type	d,%object               @ @d110	.globl	d111	.p2align	1112d:113	.zero	10114	.size	d, 10115 116	.type	e,%object               @ @e117	.section	my_data.1,"aw",%progbits118	.globl	e119	.p2align	1120e:121	.short	0                       @ 0x0122	.short	0                       @ 0x0123	.short	1                       @ 0x1124	.short	0                       @ 0x0125	.short	0                       @ 0x0126	.short	0                       @ 0x0127	.size	e, 12128 129	.type	f,%object               @ @f130	.section	my_rodata.1,"a",%progbits131	.globl	f132	.p2align	2133f:134	.long	2                       @ 0x2135	.size	f, 4136 137	.type	h,%object               @ @h138	.bss139	.globl	h140	.p2align	2141h:142	.long	0                       @ 0x0143	.size	h, 4144 145	.type	i,%object               @ @i146	.section	my_bss.2,"aw",%nobits147	.globl	i148	.p2align	2149i:150	.long	0                       @ 0x0151	.size	i, 4152 153	.type	j,%object               @ @j154	.section	my_rodata.1,"a",%progbits155	.globl	j156	.p2align	2157j:158	.long	4                       @ 0x4159	.size	j, 4160 161	.type	k,%object               @ @k162	.section	my_bss.2,"aw",%nobits163	.globl	k164	.p2align	2165k:166	.long	0                       @ 0x0167	.size	k, 4168 169	.type	_ZZ3gooE7lstat_h,%object @ @_ZZ3gooE7lstat_h170	.p2align	2171_ZZ3gooE7lstat_h:172	.long	0                       @ 0x0173	.size	_ZZ3gooE7lstat_h, 4174 175	.type	_ZL1g,%object           @ @_ZL1g176	.section	my_bss.1,"aw",%nobits177	.p2align	2178_ZL1g:179	.zero	8180	.size	_ZL1g, 8181 182	.type	l,%object               @ @l183	.section	my_data.2,"aw",%progbits184	.globl	l185	.p2align	2186l:187	.long	5                       @ 0x5188	.size	l, 4189 190	.type	m,%object               @ @m191	.section	my_rodata.2,"a",%progbits192	.globl	m193	.p2align	2194m:195	.long	6                       @ 0x6196	.size	m, 4197 198	.type	n,%object               @ @n199	.bss200	.globl	n201	.p2align	2202n:203	.long	0                       @ 0x0204	.size	n, 4205 206	.type	o,%object               @ @o207	.data208	.globl	o209	.p2align	2210o:211	.long	6                       @ 0x6212	.size	o, 4213 214	.type	p,%object               @ @p215	.section	.rodata,"a",%progbits216	.globl	p217	.p2align	2218p:219	.long	7                       @ 0x7220	.size	p, 4221 222 223	.ident	"clang version 5.0.0"224	.section	".note.GNU-stack","",%progbits225	.eabi_attribute	30, 1	@ Tag_ABI_optimization_goals226 227//CHECK:   Section {228//CHECK:     Name: .text229//CHECK:     Type: SHT_PROGBITS (0x1)230//CHECK:     Flags [ (0x6)231//CHECK:       SHF_ALLOC (0x2)232//CHECK:       SHF_EXECINSTR (0x4)233//CHECK:     ]234//CHECK:   }235//CHECK:   Section {236//CHECK:     Name: my_text.1237//CHECK:     Type: SHT_PROGBITS (0x1)238//CHECK:     Flags [ (0x6)239//CHECK:       SHF_ALLOC (0x2)240//CHECK:       SHF_EXECINSTR (0x4)241//CHECK:     ]242//CHECK:   }243//CHECK:   Section {244//CHECK:     Name: my_text.2245//CHECK:     Type: SHT_PROGBITS (0x1)246//CHECK:     Flags [ (0x6)247//CHECK:       SHF_ALLOC (0x2)248//CHECK:       SHF_EXECINSTR (0x4)249//CHECK:     ]250//CHECK:   }251//CHECK:   Section {252//CHECK:     Name: my_bss.1253//CHECK:     Type: SHT_NOBITS (0x8)254//CHECK:     Flags [ (0x3)255//CHECK:       SHF_ALLOC (0x2)256//CHECK:       SHF_WRITE (0x1)257//CHECK:     ]258//CHECK:   }259//CHECK:   Section {260//CHECK:     Name: my_data.1261//CHECK:     Type: SHT_PROGBITS (0x1)262//CHECK:     Flags [ (0x3)263//CHECK:       SHF_ALLOC (0x2)264//CHECK:       SHF_WRITE (0x1)265//CHECK:     ]266//CHECK:   }267//CHECK:   Section {268//CHECK:     Name: my_rodata.1269//CHECK:     Type: SHT_PROGBITS (0x1)270//CHECK:     Flags [ (0x2)271//CHECK:       SHF_ALLOC (0x2)272//CHECK:     ]273//CHECK:   }274//CHECK:   Section {275//CHECK:     Name: .bss276//CHECK:     Type: SHT_NOBITS (0x8)277//CHECK:     Flags [ (0x3)278//CHECK:       SHF_ALLOC (0x2)279//CHECK:       SHF_WRITE (0x1)280//CHECK:     ]281//CHECK:   }282//CHECK:   Section {283//CHECK:     Name: my_bss.2284//CHECK:     Type: SHT_NOBITS (0x8)285//CHECK:     Flags [ (0x3)286//CHECK:       SHF_ALLOC (0x2)287//CHECK:       SHF_WRITE (0x1)288//CHECK:     ]289//CHECK:   }290//CHECK:   Section {291//CHECK:     Name: my_data.2292//CHECK:     Type: SHT_PROGBITS (0x1)293//CHECK:     Flags [ (0x3)294//CHECK:       SHF_ALLOC (0x2)295//CHECK:       SHF_WRITE (0x1)296//CHECK:     ]297//CHECK:   }298//CHECK:   Section {299//CHECK:     Name: my_rodata.2300//CHECK:     Type: SHT_PROGBITS (0x1)301//CHECK:     Flags [ (0x2)302//CHECK:       SHF_ALLOC (0x2)303//CHECK:     ]304//CHECK:   }305//CHECK:   Section {306//CHECK:     Name: .data307//CHECK:     Type: SHT_PROGBITS (0x1)308//CHECK:     Flags [ (0x3)309//CHECK:       SHF_ALLOC (0x2)310//CHECK:       SHF_WRITE (0x1)311//CHECK:     ]312//CHECK:   }313//CHECK:   Section {314//CHECK:     Name: .rodata315//CHECK:     Type: SHT_PROGBITS (0x1)316//CHECK:     Flags [ (0x2)317//CHECK:       SHF_ALLOC (0x2)318//CHECK:     ]319//CHECK:   }320//CHECK:   Symbol {321//CHECK:     Name: _ZL1g322//CHECK:     Section: my_bss.1 (0xE)323//CHECK:   }324//CHECK:   Symbol {325//CHECK:     Name: _ZZ3gooE7lstat_h326//CHECK:     Section: my_bss.2 (0x12)327//CHECK:   }328//CHECK:   Symbol {329//CHECK:     Name: foo330//CHECK:     Section: my_text.1 (0x4)331//CHECK:   }332//CHECK:   Symbol {333//CHECK:     Name: b334//CHECK:     Section: my_data.1 (0xF)335//CHECK:   }336//CHECK:   Symbol {337//CHECK:     Name: goo338//CHECK:     Section: my_text.2 (0x8)339//CHECK:   }340//CHECK:   Symbol {341//CHECK:     Name: hoo342//CHECK:     Section: .text (0x2)343//CHECK:   }344//CHECK:   Symbol {345//CHECK:     Name: a346//CHECK:     Section: my_bss.1 (0xE)347//CHECK:   }348//CHECK:   Symbol {349//CHECK:     Name: c350//CHECK:     Section: my_bss.1 (0xE)351//CHECK:   }352//CHECK:   Symbol {353//CHECK:     Name: d354//CHECK:     Section: my_bss.1 (0xE)355//CHECK:   }356//CHECK:   Symbol {357//CHECK:     Name: e358//CHECK:     Section: my_data.1 (0xF)359//CHECK:   }360//CHECK:   Symbol {361//CHECK:     Name: f362//CHECK:     Section: my_rodata.1 (0x10)363//CHECK:   }364//CHECK:   Symbol {365//CHECK:     Name: h366//CHECK:     Section: .bss (0x11)367//CHECK:   }368//CHECK:   Symbol {369//CHECK:     Name: i370//CHECK:     Section: my_bss.2 (0x12)371//CHECK:   }372//CHECK:   Symbol {373//CHECK:     Name: j374//CHECK:     Section: my_rodata.1 (0x10)375//CHECK:   }376//CHECK:   Symbol {377//CHECK:     Name: k378//CHECK:     Section: my_bss.2 (0x12)379//CHECK:   }380//CHECK:   Symbol {381//CHECK:     Name: l382//CHECK:     Section: my_data.2 (0x13)383//CHECK:   }384//CHECK:   Symbol {385//CHECK:     Name: m386//CHECK:     Section: my_rodata.2 (0x14)387//CHECK:   }388//CHECK:   Symbol {389//CHECK:     Name: n390//CHECK:     Section: .bss (0x11)391//CHECK:   }392//CHECK:   Symbol {393//CHECK:     Name: o394//CHECK:     Section: .data (0x15)395//CHECK:   }396//CHECK:   Symbol {397//CHECK:     Name: p398//CHECK:     Section: .rodata (0x16)399//CHECK:   }400