Author: pcc Date: Tue Jun 21 19:57:26 2016 New Revision: 273347 URL: http://llvm.org/viewvc/llvm-project?rev=273347&view=rev Log: CodeGen: Replace test/CodeGen/thinlto_backend.c with a functional test.
This new test tests that functions are capable of being imported, rather than that the import pass is run. This new test is compatible with the approach being developed in D20268 which runs the importer on its own rather than in a pass. Differential Revision: http://reviews.llvm.org/D21542 Added: cfe/trunk/test/CodeGen/Inputs/thinlto_backend.ll cfe/trunk/test/CodeGen/thinlto_backend.ll Removed: cfe/trunk/test/CodeGen/thinlto_backend.c Added: cfe/trunk/test/CodeGen/Inputs/thinlto_backend.ll URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/Inputs/thinlto_backend.ll?rev=273347&view=auto ============================================================================== --- cfe/trunk/test/CodeGen/Inputs/thinlto_backend.ll (added) +++ cfe/trunk/test/CodeGen/Inputs/thinlto_backend.ll Tue Jun 21 19:57:26 2016 @@ -0,0 +1,6 @@ +target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" +target triple = "x86_64-unknown-linux-gnu" + +define void @f2() { + ret void +} Removed: cfe/trunk/test/CodeGen/thinlto_backend.c URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/thinlto_backend.c?rev=273346&view=auto ============================================================================== --- cfe/trunk/test/CodeGen/thinlto_backend.c (original) +++ cfe/trunk/test/CodeGen/thinlto_backend.c (removed) @@ -1,14 +0,0 @@ -// RUN: %clang -O2 %s -flto=thin -c -o %t.o -// RUN: llvm-lto -thinlto -o %t %t.o - -// Ensure clang -cc1 give expected error for incorrect input type -// RUN: not %clang_cc1 -O2 -o %t1.o %s -c -fthinlto-index=%t.thinlto.bc 2>&1 | FileCheck %s -check-prefix=CHECK-WARNING -// CHECK-WARNING: error: invalid argument '-fthinlto-index={{.*}}' only allowed with '-x ir' - -// Ensure we get expected error for missing index file -// RUN: %clang -O2 -o %t1.o -x ir %t.o -c -fthinlto-index=bad.thinlto.bc 2>&1 | FileCheck %s -check-prefix=CHECK-ERROR -// CHECK-ERROR: Error loading index file 'bad.thinlto.bc' - -// Ensure Function Importing pass added -// RUN: %clang -O2 -o %t1.o -x ir %t.o -c -fthinlto-index=%t.thinlto.bc -mllvm -debug-pass=Structure 2>&1 | FileCheck %s -check-prefix=CHECK-PASS -// CHECK-PASS: Function Importing Added: cfe/trunk/test/CodeGen/thinlto_backend.ll URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/thinlto_backend.ll?rev=273347&view=auto ============================================================================== --- cfe/trunk/test/CodeGen/thinlto_backend.ll (added) +++ cfe/trunk/test/CodeGen/thinlto_backend.ll Tue Jun 21 19:57:26 2016 @@ -0,0 +1,27 @@ +; RUN: opt -module-summary -o %t1.o %s +; RUN: opt -module-summary -o %t2.o %S/Inputs/thinlto_backend.ll +; RUN: llvm-lto -thinlto -o %t %t1.o %t2.o + +; Ensure clang -cc1 give expected error for incorrect input type +; RUN: not %clang_cc1 -O2 -o %t1.o -x c %s -c -fthinlto-index=%t.thinlto.bc 2>&1 | FileCheck %s -check-prefix=CHECK-WARNING +; CHECK-WARNING: error: invalid argument '-fthinlto-index={{.*}}' only allowed with '-x ir' + +; Ensure we get expected error for missing index file +; RUN: %clang -O2 -o %t3.o -x ir %t1.o -c -fthinlto-index=bad.thinlto.bc 2>&1 | FileCheck %s -check-prefix=CHECK-ERROR +; CHECK-ERROR: Error loading index file 'bad.thinlto.bc' + +; Ensure f2 was imported +; RUN: %clang -O2 -o %t3.o -x ir %t1.o -c -fthinlto-index=%t.thinlto.bc +; RUN: llvm-nm %t3.o | FileCheck --check-prefix=CHECK-OBJ %s +; CHECK-OBJ: T f1 +; CHECK-OBJ-NOT: U f2 + +target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" +target triple = "x86_64-unknown-linux-gnu" + +declare void @f2() + +define void @f1() { + call void @f2() + ret void +} _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits