brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.0 KiB · f5e36c4 Raw
107 lines · plain
1; RUN: opt -mtriple i686-win32 -passes='rewrite-symbols' -rewrite-map-file %p/rewrite.map \2; RUN:   %s -o - | llvm-dis | FileCheck %s3 4declare void @source_function()5@source_variable = external global i326declare void @source_function_pattern_function()7declare void @source_function_pattern_multiple_function_matches()8@source_variable_pattern_variable = external global i329@source_variable_pattern_multiple_variable_matches = external global i3210declare void @"\01naked_source_function"()11declare void @"\01__imp_missing_global_leader_prefix"()12 13declare i32 @first_callee()14declare i32 @second_callee()15define i32 @caller() {16  %rhs = call i32 @first_callee()17  %lhs = call i32 @second_callee()18  %res = add i32 %rhs, %lhs19  ret i32 %res20}21 22%struct.S = type { i8 }23@_ZN1SC1Ev = alias void (ptr), ptr @_ZN1SC2Ev24define void @_ZN1SC2Ev(ptr %this) unnamed_addr align 2 {25entry:26  %this.addr = alloca ptr, align 427  store ptr %this, ptr %this.addr, align 428  ret void29}30 31$source_comdat_function = comdat any32define dllexport void @source_comdat_function() comdat($source_comdat_function) {33entry:34  ret void35}36 37$source_comdat_function_1 = comdat exactmatch38define dllexport void @source_comdat_function_1() comdat($source_comdat_function_1) {39entry:40  ret void41}42 43$source_comdat_variable = comdat largest44@source_comdat_variable = global i32 32, comdat($source_comdat_variable)45 46$source_comdat_variable_1 = comdat nodeduplicate47@source_comdat_variable_1 = global i32 64, comdat($source_comdat_variable_1)48 49declare void @"?source_bad_regex_function"()50 51@"?source_bad_regex_variable" = external global i3252 53@"?source_bad_regex_alias" = alias void (ptr), ptr @_ZN1SC2Ev54 55; CHECK: $target_comdat_function = comdat any56; CHECK: $target_comdat_function_1 = comdat exactmatch57; CHECK: $target_comdat_variable = comdat largest58; CHECK: $target_comdat_variable_1 = comdat nodeduplicate59 60; CHECK: @target_variable = external global i3261; CHECK-NOT: @source_variable = external global i3262; CHECK: @target_pattern_variable = external global i3263; CHECK-NOT: @source_pattern_variable = external global i3264; CHECK: @target_pattern_multiple_variable_matches = external global i3265; CHECK-NOT: @source_pattern_multiple_variable_matches = external global i3266; CHECK: @target_comdat_variable = global i32 32, comdat67; CHECK-NOT: @source_comdat_variable = global i32 32, comdat68; CHECK: @target_comdat_variable_1 = global i32 64, comdat69; CHECK-NOT: @source_comdat_variable_1 = global i32 64, comdat70 71; CHECK: @target_bad_regex_variable = external global i3272; CHECK-NOT: @"?source_bad_regex_variable" = external global i3273 74; CHECK: @target_bad_regex_alias = alias void (ptr), ptr @_ZN1SC2Ev75; CHECK-NOT: @"?source_bad_regex_alias" = alias void (ptr), ptr @_ZN1SC2Ev76 77; CHECK: declare void @target_function()78; CHECK-NOT: declare void @source_function()79; CHECK: declare void @target_pattern_function()80; CHECK-NOT: declare void @source_function_pattern_function()81; CHECK: declare void @target_pattern_multiple_function_matches()82; CHECK-NOT: declare void @source_function_pattern_multiple_function_matches()83; CHECK: declare void @naked_target_function()84; CHECK-NOT: declare void @"\01naked_source_function"()85; CHECK-NOT: declare void @"\01__imp__imported_function"()86; CHECK: declare void @"\01__imp_missing_global_leader_prefix"()87; CHECK-NOT: declare void @"\01__imp_DO_NOT_REWRITE"()88 89; CHECK: declare i32 @renamed_callee()90; CHECK-NOT: declare i32 @first_callee()91; CHECK: declare i32 @second_callee()92; CHECK: define i32 @caller() {93; CHECK:   %rhs = call i32 @renamed_callee()94; CHECK-NOT: %rhs = call i32 @first_callee()95; CHECK:   %lhs = call i32 @second_callee()96; CHECK:   %res = add i32 %rhs, %lhs97; CHECK:   ret i32 %res98; CHECK: }99 100; CHECK: define dllexport void @target_comdat_function() comdat101; CHECK-NOT: define dllexport void @source_comdat_function() comdat102; CHECK: define dllexport void @target_comdat_function_1() comdat103; CHECK-NOT: define dllexport void @source_comdat_function_1() comdat104 105; CHECK: declare void @target_bad_regex_function()106; CHECK-NOT: declare void @"?source_bad_regex_function"()107