llvm/test/Linker/apple-version.ll
Akira Hatanaka ac844bf562 [LinkModules] Change the way ModuleLinker merges triples.
This commit makes the following changes:

- Stop issuing a warning when the triples' string representations do not match
  exactly if the Triple objects generated from the strings compare equal.
 
- On Apple platforms, choose the triple that has the larger minimum version
  number. 

rdar://problem/16743513

Differential Revision: http://reviews.llvm.org/D7591


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@228999 91177308-0d34-0410-b5e6-96231b3b80d8
2015-02-13 00:40:41 +00:00

25 lines
1.1 KiB
LLVM

; RUN: llvm-link %s %S/Inputs/apple-version/1.ll -S -o - 2>%t.err | FileCheck %s -check-prefix=CHECK1
; RUN: cat %t.err | FileCheck --check-prefix=WARN1 --allow-empty %s
; RUN: llvm-link %s %S/Inputs/apple-version/2.ll -S -o - 2>%t.err | FileCheck %s -check-prefix=CHECK2
; RUN: cat %t.err | FileCheck --check-prefix=WARN2 --allow-empty %s
; RUN: llvm-link %s %S/Inputs/apple-version/3.ll -S -o /dev/null 2>%t.err
; RUN: cat %t.err | FileCheck --check-prefix=WARN3 %s
; RUN: llvm-link %s %S/Inputs/apple-version/4.ll -S -o /dev/null 2>%t.err
; RUN: cat %t.err | FileCheck --check-prefix=WARN4 --allow-empty %s
; Check that the triple that has the larger version number is chosen and no
; warnings are issued when the Triples differ only in version numbers.
; CHECK1: target triple = "x86_64-apple-macosx10.10.0"
; WARN1-NOT: WARNING
; CHECK2: target triple = "x86_64-apple-macosx10.9.0"
; WARN2-NOT: WARNING
; i386 and x86_64 map to different ArchType enums.
; WARN3: WARNING: Linking two modules of different target triples
; x86_64h and x86_64 map to the same ArchType enum.
; WARN4-NOT: WARNING
target triple = "x86_64-apple-macosx10.9.0"