18c4729fdSMichael J. Spencer; How to make the shared objects from this file: 28c4729fdSMichael J. Spencer; 3*2fc34c5fSDavid Meyer; LDARGS="--unresolved-symbols=ignore-all -soname=libfoo.so --no-as-needed -lc -lm" 4*2fc34c5fSDavid Meyer; 58c4729fdSMichael J. Spencer; X86-32 ELF: 68c4729fdSMichael J. Spencer; llc -mtriple=i386-linux-gnu shared.ll -filetype=obj -o tmp32.o -relocation-model=pic 7*2fc34c5fSDavid Meyer; ld -melf_i386 -shared tmp32.o -o shared-object-test.elf-i386 $LDARGS 88c4729fdSMichael J. Spencer; 98c4729fdSMichael J. Spencer; X86-64 ELF: 108c4729fdSMichael J. Spencer; llc -mtriple=x86_64-linux-gnu shared.ll -filetype=obj -o tmp64.o -relocation-model=pic 11*2fc34c5fSDavid Meyer; ld -melf_x86_64 -shared tmp64.o -o shared-object-test.elf-x86-64 $LDARGS 128c4729fdSMichael J. Spencer 138c4729fdSMichael J. Spencer@defined_sym = global i32 1, align 4 148c4729fdSMichael J. Spencer 158c4729fdSMichael J. Spencer@tls_sym = thread_local global i32 2, align 4 168c4729fdSMichael J. Spencer 178c4729fdSMichael J. Spencer@undef_sym = external global i32 188c4729fdSMichael J. Spencer 198c4729fdSMichael J. Spencer@undef_tls_sym = external thread_local global i32 208c4729fdSMichael J. Spencer 218c4729fdSMichael J. Spencer@common_sym = common global i32 0, align 4 228c4729fdSMichael J. Spencer 238c4729fdSMichael J. Spencerdefine i32 @global_func() nounwind uwtable { 248c4729fdSMichael J. Spencerentry: 258c4729fdSMichael J. Spencer ret i32 0 268c4729fdSMichael J. Spencer} 278c4729fdSMichael J. Spencer 288c4729fdSMichael J. Spencerdeclare i32 @undef_func(...) 298c4729fdSMichael J. Spencer 308c4729fdSMichael J. Spencerdefine internal i32 @local_func() nounwind uwtable { 318c4729fdSMichael J. Spencerentry: 328c4729fdSMichael J. Spencer ret i32 0 338c4729fdSMichael J. Spencer} 34