Skip to content

Commit 3f06cc7

Browse files
committed
fix lit test for clang-offload-wrapper
1 parent a605b40 commit 3f06cc7

File tree

2 files changed

+18
-16
lines changed

2 files changed

+18
-16
lines changed

clang/test/Driver/clang-offload-wrapper.c

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -27,33 +27,37 @@
2727
// ELF-WARNING: is not an ELF image, so notes cannot be added to it.
2828
// CHECK-IR: target triple = "x86_64-pc-linux-gnu"
2929

30-
// CHECK-IR-DAG: [[ENTTY:%.+]] = type { ptr, ptr, i{{32|64}}, i32, i32 }
30+
// CHECK-IR-DAG: [[ENTTY:%.+]] = type { i64, i16, i16, i32, ptr, ptr, i64, i64, ptr }
3131
// CHECK-IR-DAG: [[IMAGETY:%.+]] = type { ptr, ptr, ptr, ptr }
3232
// CHECK-IR-DAG: [[DESCTY:%.+]] = type { i32, ptr, ptr, ptr }
33-
34-
// CHECK-IR: [[ENTBEGIN:@.+]] = external hidden constant [[ENTTY]]
35-
// CHECK-IR: [[ENTEND:@.+]] = external hidden constant [[ENTTY]]
36-
37-
// CHECK-IR: [[DUMMY:@.+]] = weak hidden constant [0 x [[ENTTY]]] zeroinitializer, section "omp_offloading_entries"
33+
//
34+
// CHECK-IR: [[ENTBEGIN:@.+]] = external hidden constant [0 x [[ENTTY]]]
35+
// CHECK-IR: [[ENTEND:@.+]] = external hidden constant [0 x [[ENTTY]]]
36+
// CHECK-IR: [[DUMMY:@.+]] = internal constant [0 x [[ENTTY]]] zeroinitializer, section "llvm_offload_entries", align 8
37+
// CHECK-IR: @llvm.compiler.used = appending global [1 x ptr] [ptr [[DUMMY]]], section "llvm.metadata"
3838

3939
// CHECK-IR: [[BIN:@.+]] = internal unnamed_addr constant [[[SIZE:[0-9]+]] x i8] c"\10\FF\10\AD{{.*}}"
40-
41-
// CHECK-IR: [[IMAGES:@.+]] = internal unnamed_addr constant [1 x [[IMAGETY]]] [[[IMAGETY]] { ptr [[BIN]], ptr getelementptr ([[[SIZE]] x i8], ptr [[BIN]], i64 0, i64 160), ptr [[ENTBEGIN]], ptr [[ENTEND]] }]
42-
40+
ffloading.device_image = internal unnamed_addr constant [[[SIZE]] x i8] c"\10\FF\10\AD\01\00\00\0
41+
// CHECK-IR: [[IMAGES:@.+]] = internal unnamed_addr constant [1 x %__tgt_device_image] [%__tgt_device_image { ptr getelementptr ([[[SIZE]] x i8], ptr [[BIN]], i64 0, i64 136), ptr getelementptr ([[[SIZE]] x i8], ptr [[BIN]], i64 0, i64 159), ptr [[ENTBEGIN]], ptr [[ENTEND]] }]
4342
// CHECK-IR: [[DESC:@.+]] = internal constant [[DESCTY]] { i32 1, ptr [[IMAGES]], ptr [[ENTBEGIN]], ptr [[ENTEND]] }
43+
// CHECK-IR: @llvm.global_ctors = appending global [1 x { i32, ptr, ptr }] [{ i32, ptr, ptr } { i32 101, ptr [[REGFN:@.+]], ptr null }]
4444

45-
// CHECK-IR: @llvm.global_ctors = appending global [1 x { i32, ptr, ptr }] [{ i32, ptr, ptr } { i32 1, ptr [[REGFN:@.+]], ptr null }]
46-
47-
// CHECK-IR: define internal void [[REGFN]]()
45+
// CHECK-IR: define internal void [[REGFN]]() section ".text.startup" {
4846
// CHECK-IR: call void @__tgt_register_lib(ptr [[DESC]])
47+
// CHECK-IR: %0 = call i32 @atexit(ptr @.omp_offloading.descriptor_unreg)
4948
// CHECK-IR: ret void
49+
// CHECK-IR: }
5050

5151
// CHECK-IR: declare void @__tgt_register_lib(ptr)
5252

53+
// CHECK-IR: declare i32 @atexit(ptr)
54+
55+
// CHECK-IR: define internal void [[DESC]]_unreg() section ".text.startup" {
5356
// CHECK-IR: call void @__tgt_unregister_lib(ptr [[DESC]])
5457
// CHECK-IR: ret void
58+
// CHECK-IR: }
5559

56-
// CHECK-IR: declare void @__tgt_unregister_lib(ptr)
60+
// CHECK_IR: declare void @__tgt_unregister_lib(ptr)
5761

5862
// Check that clang-offload-wrapper adds LLVMOMPOFFLOAD notes
5963
// into the ELF offload images:

clang/tools/clang-offload-wrapper/ClangOffloadWrapper.cpp

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -415,9 +415,7 @@ int main(int argc, const char **argv) {
415415
LLVMContext Context;
416416
Module MM("offload.wrapper.module", Context);
417417

418-
MM.setTargetTriple(Triple(Target));
419-
420-
// BinaryWrapper BW(AuxTriple.empty() ? Target : AuxTriple, argv[0]);
418+
MM.setTargetTriple( AuxTriple.empty() ? Triple(Target) : Triple(AuxTriple));
421419

422420
// Collect offload-archs.
423421
SmallVector<ArrayRef<char>, 4u> OffloadArchs;

0 commit comments

Comments
 (0)