summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeter Collingbourne <peter@pcc.me.uk>2016-11-29 21:55:09 +0000
committerPeter Collingbourne <peter@pcc.me.uk>2016-11-29 21:55:09 +0000
commit8700d91ddb8da084c89d52c683e9a326bd1c8179 (patch)
tree6efbef5a8073cee2363f78befa34c89ab1dcb72c
parentcb6b920ba077fd2fb9cb1f4e4dc576ef9e9e3322 (diff)
downloadbcm5719-llvm-8700d91ddb8da084c89d52c683e9a326bd1c8179.tar.gz
bcm5719-llvm-8700d91ddb8da084c89d52c683e9a326bd1c8179.zip
Bitcode: Add a more comprehensive multi-module test now that we have both llvm-cat and llvm-modextract.
Differential Revision: https://reviews.llvm.org/D27189 llvm-svn: 288202
-rw-r--r--llvm/test/Bitcode/multi-module.ll16
1 files changed, 14 insertions, 2 deletions
diff --git a/llvm/test/Bitcode/multi-module.ll b/llvm/test/Bitcode/multi-module.ll
index a6c25c7cdbe..5f73240e8a0 100644
--- a/llvm/test/Bitcode/multi-module.ll
+++ b/llvm/test/Bitcode/multi-module.ll
@@ -2,10 +2,11 @@
; RUN: not llvm-dis -o - %t 2>&1 | FileCheck --check-prefix=ERROR %s
; ERROR: Expected a single module
-; FIXME: Introduce a tool for extracting modules from bitcode and use it here.
-; For now we can at least check that the bitcode contains multiple modules.
; RUN: llvm-bcanalyzer -dump %t | FileCheck --check-prefix=BCA %s
+; RUN: llvm-modextract -n 0 -o - %t | llvm-dis | FileCheck --check-prefix=IR1 %s
+; RUN: llvm-modextract -n 1 -o - %t | llvm-dis | FileCheck --check-prefix=IR2 %s
+
; RUN: llvm-as -o %t1 %s
; RUN: llvm-as -o %t2 %S/Inputs/multi-module.ll
; RUN: llvm-cat -o %t %t1 %t2
@@ -16,10 +17,18 @@
; RUN: not llvm-dis -o - %t 2>&1 | FileCheck --check-prefix=ERROR %s
; RUN: llvm-bcanalyzer -dump %t | FileCheck --check-prefix=BCA %s
+; RUN: llvm-modextract -n 0 -o - %t | llvm-dis | FileCheck --check-prefix=IR1 %s
+; RUN: llvm-modextract -n 1 -o - %t | llvm-dis | FileCheck --check-prefix=IR2 %s
+
; RUN: llvm-cat -b -o %t3 %t %t
; RUN: not llvm-dis -o - %t3 2>&1 | FileCheck --check-prefix=ERROR %s
; RUN: llvm-bcanalyzer -dump %t3 | FileCheck --check-prefix=BCA4 %s
+; RUN: llvm-modextract -n 0 -o - %t3 | llvm-dis | FileCheck --check-prefix=IR1 %s
+; RUN: llvm-modextract -n 1 -o - %t3 | llvm-dis | FileCheck --check-prefix=IR2 %s
+; RUN: llvm-modextract -n 2 -o - %t3 | llvm-dis | FileCheck --check-prefix=IR1 %s
+; RUN: llvm-modextract -n 3 -o - %t3 | llvm-dis | FileCheck --check-prefix=IR2 %s
+
; BCA: <IDENTIFICATION_BLOCK
; BCA: <MODULE_BLOCK
; BCA: <IDENTIFICATION_BLOCK
@@ -34,6 +43,9 @@
; BCA4: <IDENTIFICATION_BLOCK
; BCA4: <MODULE_BLOCK
+; IR1: define void @f1()
+; IR2: define void @f2()
+
define void @f1() {
ret void
}
OpenPOWER on IntegriCloud