diff options
Diffstat (limited to 'llvm')
| -rw-r--r-- | llvm/test/tools/gold/X86/start-lib-common.ll | 2 | ||||
| -rw-r--r-- | llvm/test/tools/gold/X86/v1.12/Inputs/start-lib-common.ll | 1 | ||||
| -rw-r--r-- | llvm/test/tools/gold/X86/v1.12/start-lib-common.ll | 16 |
3 files changed, 18 insertions, 1 deletions
diff --git a/llvm/test/tools/gold/X86/start-lib-common.ll b/llvm/test/tools/gold/X86/start-lib-common.ll index 85222615d4a..f4de62ec99b 100644 --- a/llvm/test/tools/gold/X86/start-lib-common.ll +++ b/llvm/test/tools/gold/X86/start-lib-common.ll @@ -19,4 +19,4 @@ ; Check that the common symbol is not dropped completely, which was a regression ; in r262676. -; CHECK: @x = common global i32 0, align 8 +; CHECK: @x = common global i32 0, align diff --git a/llvm/test/tools/gold/X86/v1.12/Inputs/start-lib-common.ll b/llvm/test/tools/gold/X86/v1.12/Inputs/start-lib-common.ll new file mode 100644 index 00000000000..e8e53b8726d --- /dev/null +++ b/llvm/test/tools/gold/X86/v1.12/Inputs/start-lib-common.ll @@ -0,0 +1 @@ +@x = common global i32 0, align 8 diff --git a/llvm/test/tools/gold/X86/v1.12/start-lib-common.ll b/llvm/test/tools/gold/X86/v1.12/start-lib-common.ll new file mode 100644 index 00000000000..877570a0f6e --- /dev/null +++ b/llvm/test/tools/gold/X86/v1.12/start-lib-common.ll @@ -0,0 +1,16 @@ +; Test the case when the preferred (larger / more aligned) version of a common +; symbol is located in a module that's not included in the link. + +; RUN: llvm-as %s -o %t1.o +; RUN: llvm-as %p/Inputs/start-lib-common.ll -o %t2.o + +; RUN: %gold -plugin %llvmshlibdir/LLVMgold.so \ +; RUN: --plugin-opt=emit-llvm \ +; RUN: -shared %t1.o --start-lib %t2.o --end-lib -o %t3.o +; RUN: llvm-dis %t3.o -o - | FileCheck %s + +@x = common global i32 0, align 4 + +; v1.12 gold honors --start-lib/--end-lib, drops %t2.o and ends up +; with (i32 align 4) symbol. +; CHECK: @x = common global i32 0, align 4 |

