mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-10-24 21:42:54 +02:00
0ba5a45ed3
I found these while trying to get a prototype to bootstrap. They cover things like * Handling of non linker visible stuff (append, available_externally) * Type merging * Alias to dropped globals * Dropping linkage when converting to a declaration. These should hopefully be generally useful for anyone refactoring the plugin. llvm-svn: 254174
15 lines
605 B
LLVM
15 lines
605 B
LLVM
; RUN: llvm-as %s -o %t.o
|
|
; RUN: llvm-as %p/Inputs/ctors2.ll -o %t2.o
|
|
; RUN: %gold -plugin %llvmshlibdir/LLVMgold.so \
|
|
; RUN: --plugin-opt=emit-llvm \
|
|
; RUN: -shared %t.o %t2.o -o %t3.o
|
|
; RUN: llvm-dis %t3.o -o - | FileCheck %s
|
|
|
|
@llvm.global_ctors = appending global [1 x { i32, void ()*, i8* }] [{ i32, void ()*, i8* } { i32 65535, void ()* @foo, i8* null }]
|
|
|
|
define void @foo() {
|
|
ret void
|
|
}
|
|
|
|
; CHECK: @llvm.global_ctors = appending global [2 x { i32, void ()*, i8* }] [{ i32, void ()*, i8* } { i32 65535, void ()* @foo, i8* null }, { i32, void ()*, i8* } { i32 65535, void ()* @bar, i8* null }]
|