brintos

brintos / llvm-project-archived public Read only

0
0
Text · 6.4 KiB · 030356e Raw
218 lines · plain
1; RUN: llc -verify-machineinstrs -mtriple powerpc-ibm-aix-xcoff -mcpu=pwr4 -mattr=-altivec -data-sections=false < %s | \2; RUN:   FileCheck %s3; RUN: llc -verify-machineinstrs -mtriple powerpc64-ibm-aix-xcoff -mcpu=pwr4 -mattr=-altivec -data-sections=false < %s |\4; RUN:   FileCheck %s5 6; RUN: llc -verify-machineinstrs -mtriple powerpc-ibm-aix-xcoff -mcpu=ppc -filetype=obj %s -o %t.o7; RUN: llvm-readobj --syms --auxiliary-header %t.o | FileCheck %s --check-prefixes=SYM,AUX328 9; RUN: llc -verify-machineinstrs -mtriple powerpc64-ibm-aix-xcoff -mcpu=ppc -filetype=obj %s -o %t64.o10; RUN: llvm-readobj --syms --auxiliary-header %t64.o | FileCheck %s --check-prefixes=SYM,AUX6411 12@b =  global i32 0, align 413@b_h = hidden global i32 0, align 414@b_e = dllexport global i32 0, align 415 16define void @foo() {17entry:18  ret void19}20 21define hidden void @foo_h(ptr %ip) {22entry:23  ret void24}25 26define dllexport void @foo_e(ptr %ip) {27entry:28  ret void29}30 31define protected void @foo_protected(ptr %ip) {32entry:33  ret void34}35 36define weak hidden void @foo_weak_h() {37entry:38  ret void39}40 41define weak dllexport void @foo_weak_e() {42entry:43  ret void44}45 46@foo_p = global ptr @zoo_weak_extern_h, align 447declare extern_weak hidden void @zoo_weak_extern_h()48declare extern_weak dllexport void @zoo_weak_extern_e()49 50define i32 @main() {51entry:52  %call1= call i32 @bar_h(ptr @b_h)53  call void @foo_weak_h()54  %0 = load ptr, ptr @foo_p, align 455  call void %0()56  ret i32 057}58 59declare hidden i32 @bar_h(ptr)60declare dllexport i32 @bar_e(ptr)61 62; CHECK:        .globl  foo[DS]{{[[:space:]]*([#].*)?$}}63; CHECK:        .globl  .foo{{[[:space:]]*([#].*)?$}}64; CHECK:        .globl  foo_h[DS],hidden65; CHECK:        .globl  .foo_h,hidden66; CHECK:        .globl  foo_e[DS],exported67; CHECK:        .globl  .foo_e,exported68; CHECK:        .globl  foo_protected[DS],protected69; CHECK:        .globl  .foo_protected,protected70; CHECK:        .weak   foo_weak_h[DS],hidden71; CHECK:        .weak   .foo_weak_h,hidden72; CHECK:        .weak   foo_weak_e[DS],exported73; CHECK:        .weak   .foo_weak_e,exported74 75; CHECK:        .globl  b{{[[:space:]]*([#].*)?$}}76; CHECK:        .globl  b_h,hidden77; CHECK:        .globl  b_e,exported78 79; CHECK:        .weak   .zoo_weak_extern_h[PR],hidden80; CHECK:        .weak   zoo_weak_extern_h[DS],hidden81; CHECK:        .weak   .zoo_weak_extern_e[PR],exported82; CHECK:        .extern .bar_h[PR],hidden83; CHECK:        .extern .bar_e[PR],exported84 85; AUX32:       AuxiliaryHeader {86; AUX32-NEXT:    Magic: 0x087; AUX32-NEXT:    Version: 0x288; AUX32-NEXT:    Size of .text section: 0x13489; AUX32-NEXT:    Size of .data section: 0x6C90; AUX32-NEXT:    Size of .bss section: 0x091; AUX32-NEXT:    Entry point address: 0x092; AUX32-NEXT:    .text section start address: 0x093; AUX32-NEXT:    .data section start address: 0x13494; AUX32-NEXT:  }95 96; AUX64:       AuxiliaryHeader {97; AUX64-NEXT:  }98 99; SYM:         Name: .bar_h100; SYM-NEXT:    Value (RelocatableAddress): 0x0101; SYM-NEXT:    Section: N_UNDEF102; SYM-NEXT:    Type: 0x2000103; SYM-NEXT:    StorageClass: C_EXT (0x2)104 105; SYM:         Name: zoo_weak_extern_h106; SYM-NEXT:    Value (RelocatableAddress): 0x0107; SYM-NEXT:    Section: N_UNDEF108; SYM-NEXT:    Type: 0x2000109; SYM-NEXT:    StorageClass: C_WEAKEXT (0x6F)110 111; SYM:         Name: .zoo_weak_extern_h112; SYM-NEXT:    Value (RelocatableAddress): 0x0113; SYM-NEXT:    Section: N_UNDEF114; SYM-NEXT:    Type: 0x2000115; SYM-NEXT:    StorageClass: C_WEAKEXT (0x6F)116 117; SYM:         Name: .zoo_weak_extern_e118; SYM-NEXT:    Value (RelocatableAddress): 0x0119; SYM-NEXT:    Section: N_UNDEF120; SYM-NEXT:    Type: 0x4000121; SYM-NEXT:    StorageClass: C_WEAKEXT (0x6F)122 123; SYM:         Name: .bar_e124; SYM-NEXT:    Value (RelocatableAddress): 0x0125; SYM-NEXT:    Section: N_UNDEF126; SYM-NEXT:    Type: 0x4000127; SYM-NEXT:    StorageClass: C_EXT (0x2)128 129; SYM:         Name: .foo130; SYM-NEXT:    Value (RelocatableAddress): 0x0131; SYM-NEXT:    Section: .text132; SYM-NEXT:    Type: 0x0133; SYM-NEXT:    StorageClass: C_EXT (0x2)134 135; SYM:         Name: .foo_h136; SYM-NEXT:    Value (RelocatableAddress): 0x1C137; SYM-NEXT:    Section: .text138; SYM-NEXT:    Type: 0x2000139; SYM-NEXT:    StorageClass: C_EXT (0x2)140 141; SYM:         Name: .foo_e142; SYM-NEXT:    Value (RelocatableAddress): 0x3C143; SYM-NEXT:    Section: .text144; SYM-NEXT:    Type: 0x4000145; SYM-NEXT:    StorageClass: C_EXT (0x2)146 147; SYM:         Name: .foo_protected148; SYM-NEXT:    Value (RelocatableAddress): 0x5C149; SYM-NEXT:    Section: .text150; SYM-NEXT:    Type: 0x3000151; SYM-NEXT:    StorageClass: C_EXT (0x2)152 153; SYM:         Name: .foo_weak_h154; SYM-NEXT:    Value (RelocatableAddress): 0x84155; SYM-NEXT:    Section: .text156; SYM-NEXT:    Type: 0x2000157; SYM-NEXT:    StorageClass: C_WEAKEXT (0x6F)158 159; SYM:         Name: .foo_weak_e160; SYM-NEXT:    Value (RelocatableAddress): 0xA4161; SYM-NEXT:    Section: .text162; SYM-NEXT:    Type: 0x4000163; SYM-NEXT:    StorageClass: C_WEAKEXT (0x6F)164 165; SYM:         Name: b166; SYM-NEXT:    Value (RelocatableAddress): 0x134167; SYM-NEXT:    Section: .data168; SYM-NEXT:    Type: 0x0169; SYM-NEXT:    StorageClass: C_EXT (0x2)170 171; SYM:         Name: b_h172; SYM-NEXT:    Value (RelocatableAddress): 0x138173; SYM-NEXT:    Section: .data174; SYM-NEXT:    Type: 0x2000175; SYM-NEXT:    StorageClass: C_EXT (0x2)176 177; SYM:         Name: b_e178; SYM-NEXT:    Value (RelocatableAddress): 0x13C179; SYM-NEXT:    Section: .data180; SYM-NEXT:    Type: 0x4000181; SYM-NEXT:    StorageClass: C_EXT (0x2)182 183; SYM:         Name: foo184; SYM-NEXT:    Value (RelocatableAddress): {{[0-9]+}}185; SYM-NEXT:    Section: .data186; SYM-NEXT:    Type: 0x0187; SYM-NEXT:    StorageClass: C_EXT (0x2)188 189; SYM:         Name: foo_h190; SYM-NEXT:    Value (RelocatableAddress): {{[0-9]+}}191; SYM-NEXT:    Section: .data192; SYM-NEXT:    Type: 0x2000193; SYM-NEXT:    StorageClass: C_EXT (0x2)194 195; SYM:         Name: foo_e196; SYM-NEXT:    Value (RelocatableAddress): {{[0-9]+}}197; SYM-NEXT:    Section: .data198; SYM-NEXT:    Type: 0x4000199; SYM-NEXT:    StorageClass: C_EXT (0x2)200 201; SYM:         Name: foo_protected202; SYM-NEXT:    Value (RelocatableAddress): {{[0-9]+}}203; SYM-NEXT:    Section: .data204; SYM-NEXT:    Type: 0x3000205; SYM-NEXT:    StorageClass: C_EXT (0x2)206 207; SYM:         Name: foo_weak_h208; SYM-NEXT:    Value (RelocatableAddress): {{[0-9]+}}209; SYM-NEXT:    Section: .data210; SYM-NEXT:    Type: 0x2000211; SYM-NEXT:    StorageClass: C_WEAKEXT (0x6F)212 213; SYM:         Name: foo_weak_e214; SYM-NEXT:    Value (RelocatableAddress): {{[0-9]+}}215; SYM-NEXT:    Section: .data216; SYM-NEXT:    Type: 0x4000217; SYM-NEXT:    StorageClass: C_WEAKEXT (0x6F)218