65 lines · plain
1; REQUIRES: x862; RUN: rm -fr %t.dir/savetemps-colon3; RUN: mkdir -p %t.dir/savetemps-colon4; RUN: opt -thinlto-bc -o %t.dir/savetemps-colon/savetemps.obj %s5; RUN: opt -thinlto-bc -o %t.dir/savetemps-colon/thin1.obj %S/Inputs/thinlto.ll6 7;; Check preopt8; RUN: lld-link /lldsavetemps:preopt /out:%t.dir/savetemps-colon/savetemps.exe /entry:main \9; RUN: /subsystem:console %t.dir/savetemps-colon/savetemps.obj %t.dir/savetemps-colon/thin1.obj10; RUN: ls %t.dir/savetemps-colon/*.obj.*.preopt.bc | count 211 12;; Check promote13; RUN: lld-link /lldsavetemps:promote /out:%t.dir/savetemps-colon/savetemps.exe /entry:main \14; RUN: /subsystem:console %t.dir/savetemps-colon/savetemps.obj %t.dir/savetemps-colon/thin1.obj15; RUN: ls %t.dir/savetemps-colon/*.obj.*.promote.bc | count 216 17;; Check internalize18; RUN: lld-link /lldsavetemps:internalize /out:%t.dir/savetemps-colon/savetemps.exe /entry:main \19; RUN: /subsystem:console %t.dir/savetemps-colon/savetemps.obj %t.dir/savetemps-colon/thin1.obj20; RUN: ls %t.dir/savetemps-colon/*.obj.*.internalize.bc | count 221 22;; Check import23; RUN: lld-link /lldsavetemps:import /out:%t.dir/savetemps-colon/savetemps.exe /entry:main \24; RUN: /subsystem:console %t.dir/savetemps-colon/savetemps.obj %t.dir/savetemps-colon/thin1.obj25; RUN: ls %t.dir/savetemps-colon/*.obj.*.import.bc | count 226 27;; Check opt28;; Not supported on Windows due to difficulty with escaping "opt" across platforms.29 30;; Check precodegen31; RUN: lld-link /lldsavetemps:precodegen /out:%t.dir/savetemps-colon/savetemps.exe /entry:main \32; RUN: /subsystem:console %t.dir/savetemps-colon/savetemps.obj %t.dir/savetemps-colon/thin1.obj33; RUN: ls %t.dir/savetemps-colon/*.obj.*.precodegen.bc | count 234 35;; Check combinedindex36; RUN: lld-link /lldsavetemps:combinedindex /out:%t.dir/savetemps-colon/savetemps.exe /entry:main \37; RUN: /subsystem:console %t.dir/savetemps-colon/savetemps.obj %t.dir/savetemps-colon/thin1.obj38; RUN: ls %t.dir/savetemps-colon/*.exe.index.bc | count 139 40;; Check prelink41; RUN: lld-link /lldsavetemps:prelink /out:%t.dir/savetemps-colon/savetemps.exe /entry:main \42; RUN: /subsystem:console %t.dir/savetemps-colon/savetemps.obj %t.dir/savetemps-colon/thin1.obj43; RUN: ls %t.dir/savetemps-colon/*.exe.lto.*.obj | count 244 45;; Check resolution46; RUN: lld-link /lldsavetemps:resolution /out:%t.dir/savetemps-colon/savetemps.exe /entry:main \47; RUN: /subsystem:console %t.dir/savetemps-colon/savetemps.obj %t.dir/savetemps-colon/thin1.obj48; RUN: ls %t.dir/savetemps-colon/*.resolution.txt | count 149 50;; Check error message51; RUN: not lld-link /lldsavetemps:notastage /out:%t.dir/savetemps-colon/savetemps.exe /entry:main \52; RUN: /subsystem:console %t.dir/savetemps-colon/savetemps.obj %t.dir/savetemps-colon/thin1.obj 2>&1 \53; RUN: | FileCheck %s54; CHECK: unknown /lldsavetemps value: notastage55 56target datalayout = "e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"57target triple = "x86_64-pc-windows-msvc"58 59declare void @g()60 61define i32 @main() {62 call void @g()63 ret i32 064}65