117 lines · plain
1;RUN: llc -mtriple=armv7-eabi %s -o - | FileCheck %s2;Test that global variables and functions are assigned to correct sections.3 4target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"5target triple = "armv7-arm-none-eabi"6 7@a = global i32 0, align 4 #08@b = global i32 1, align 4 #09@c = global [4 x i32] zeroinitializer, align 4 #010@d = global [5 x i16] zeroinitializer, align 2 #011@e = global [6 x i16] [i16 0, i16 0, i16 1, i16 0, i16 0, i16 0], align 2 #012@f = constant i32 2, align 4 #013@h = global i32 0, align 4 #114@i = global i32 0, align 4 #215@j = constant i32 4, align 4 #216@k = global i32 0, align 4 #217@_ZZ3gooE7lstat_h = internal global i32 0, align 4 #218@_ZL1g = internal global [2 x i32] zeroinitializer, align 4 #019@l = global i32 5, align 4 #320@m = constant i32 6, align 4 #321@n = global i32 0, align 422@o = global i32 6, align 423@p = constant i32 7, align 424 25declare i32 @zoo(ptr, ptr) #626 27; Function Attrs: noinline nounwind28define i32 @hoo() #7 {29entry:30 %0 = load i32, ptr @b, align 431 ret i32 %032}33 34attributes #0 = { "bss-section"="my_bss.1" "data-section"="my_data.1" "rodata-section"="my_rodata.1" }35attributes #1 = { "data-section"="my_data.1" "rodata-section"="my_rodata.1" }36attributes #2 = { "bss-section"="my_bss.2" "rodata-section"="my_rodata.1" }37attributes #3 = { "bss-section"="my_bss.2" "data-section"="my_data.2" "rodata-section"="my_rodata.2" }38attributes #6 = { "correctly-rounded-divide-sqrt-fp-math"="false" "denormal-fp-math"="preserve-sign,preserve-sign" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="true" "no-nans-fp-math"="true" "no-signed-zeros-fp-math"="true" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="cortex-a9" "target-features"="+dsp,+fp16,+neon,+vfp3" "use-soft-float"="false" }39attributes #7 = { noinline nounwind "correctly-rounded-divide-sqrt-fp-math"="false" "denormal-fp-math"="preserve-sign,preserve-sign" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="true" "no-jump-tables"="false" "no-nans-fp-math"="true" "no-signed-zeros-fp-math"="true" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="cortex-a9" "target-features"="+dsp,+fp16,+neon,+vfp3" "use-soft-float"="false" }40 41!llvm.module.flags = !{!0, !1, !2, !3}42 43!0 = !{i32 1, !"wchar_size", i32 4}44!1 = !{i32 1, !"static_rwdata", i32 1}45!2 = !{i32 1, !"enumsize_buildattr", i32 2}46!3 = !{i32 1, !"armlib_unavailable", i32 0}47 48;CHECK: .text49;CHECK: .type hoo,%function50;CHECK: hoo:51 52;CHECK: .type a,%object53;CHECK: .section my_bss.1,"aw",%nobits54;CHECK: a:55 56;CHECK: .type b,%object57;CHECK: .section my_data.1,"aw",%progbits58;CHECK: b:59 60;CHECK: .type c,%object61;CHECK: .section my_bss.1,"aw",%nobits62;CHECK: c:63 64;CHECK: .type d,%object65;CHECK: d:66 67;CHECK: .type e,%object68;CHECK: .section my_data.1,"aw",%progbits69;CHECK: e:70 71;CHECK: .type f,%object72;CHECK: .section my_rodata.1,"a",%progbits73;CHECK: f:74 75;CHECK: .type h,%object76;CHECK: .bss77;CHECK: h:78 79;CHECK: .type i,%object80;CHECK: .section my_bss.2,"aw",%nobits81;CHECK: i:82 83;CHECK: .type j,%object84;CHECK: .section my_rodata.1,"a",%progbits85;CHECK: j:86 87;CHECK: .type k,%object88;CHECK: .section my_bss.2,"aw",%nobits89;CHECK: k:90 91;CHECK: .type _ZZ3gooE7lstat_h,%object @ @_ZZ3gooE7lstat_h92;CHECK: _ZZ3gooE7lstat_h:93 94;CHECK: .type _ZL1g,%object95;CHECK: .section my_bss.1,"aw",%nobits96;CHECK: _ZL1g:97 98;CHECK: .type l,%object99;CHECK: .section my_data.2,"aw",%progbits100;CHECK: l:101 102;CHECK: .type m,%object103;CHECK: .section my_rodata.2,"a",%progbits104;CHECK: m:105 106;CHECK: .type n,%object107;CHECK: .bss108;CHECK: n:109 110;CHECK: .type o,%object111;CHECK: .data112;CHECK: o:113 114;CHECK: .type p,%object115;CHECK: .section .rodata,"a",%progbits116;CHECK: p:117