mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-22 12:08:33 +00:00
e8d826b844
Our verifier check for checking if a global has local linkage was too strict. Forbid private linkage but permit local linkage. Object file formats permit this and forbidding it prevents elimination of unused, internal, vftables under the MSVC ABI. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@212900 91177308-0d34-0410-b5e6-96231b3b80d8
22 lines
381 B
LLVM
22 lines
381 B
LLVM
; RUN: llvm-as < %s | llvm-dis | FileCheck %s
|
|
|
|
$f = comdat any
|
|
; CHECK: $f = comdat any
|
|
|
|
$f2 = comdat any
|
|
; CHECK-NOT: f2
|
|
|
|
@v = global i32 0, comdat $f
|
|
; CHECK: @v = global i32 0, comdat $f
|
|
|
|
@a = alias i32* @v
|
|
; CHECK: @a = alias i32* @v{{$}}
|
|
|
|
define void @f() comdat $f {
|
|
ret void
|
|
}
|
|
; CHECK: define void @f() comdat $f
|
|
|
|
$i = comdat largest
|
|
@i = internal global i32 0, comdat $i
|