38 lines · plain
1// REQUIRES: x862 3// ---- precomp-a.obj - x86_64, hotpatch4RUN: llvm-mc -triple x86_64-windows-msvc -filetype=obj %S/Inputs/loadconfig-cfg-x64.s -o %t.ldcfg.obj5 6RUN: lld-link %S/Inputs/precomp-a.obj %t.ldcfg.obj /out:%t.exe /nodefaultlib /force7RUN: llvm-readobj --coff-load-config %t.exe | FileCheck %s --check-prefix BASE8 9RUN: lld-link %S/Inputs/precomp-a.obj %t.ldcfg.obj /out:%t.exe /nodefaultlib /force /dependentloadflag:0x80010RUN: llvm-readobj --coff-load-config %t.exe | FileCheck %s --check-prefix FLAGS-80011 12// ---- Many arguments13RUN: lld-link %S/Inputs/precomp-a.obj %t.ldcfg.obj /out:%t.exe /nodefaultlib /force /dependentloadflag:0x400 /dependentloadflag:0x80014RUN: llvm-readobj --coff-load-config %t.exe | FileCheck %s --check-prefix FLAGS-80015 16RUN: lld-link %S/Inputs/precomp-a.obj %t.ldcfg.obj /out:%t.exe /nodefaultlib /force /dependentloadflag:0x800 /dependentloadflag:0x40017RUN: llvm-readobj --coff-load-config %t.exe | FileCheck %s --check-prefix FLAGS-40018 19RUN: not lld-link %S/Inputs/precomp-a.obj %t.ldcfg.obj /out:%t.exe /nodefaultlib /force /dependentloadflag 2>&1 | FileCheck %s --check-prefix FAIL-NOARG20RUN: not lld-link %S/Inputs/precomp-a.obj %t.ldcfg.obj /out:%t.exe /nodefaultlib /force /dependentloadflag:zz 2>&1 | FileCheck %s --check-prefix FAIL21RUN: not lld-link %S/Inputs/precomp-a.obj %t.ldcfg.obj /out:%t.exe /nodefaultlib /force /dependentloadflag:0xf0000 2>&1 | FileCheck %s --check-prefix FAIL-RANGE22 23// ---- Warn if _load_config_used is missing24RUN: llvm-lib %t.ldcfg.obj /out:%t.lib25RUN: lld-link %S/Inputs/precomp-a.obj /out:%t.exe /nodefaultlib /force /dependentloadflag:0x800 2>&1 | FileCheck %s --check-prefix WARN-NOBASE26RUN: lld-link %S/Inputs/precomp-a.obj %t.lib /out:%t.exe /nodefaultlib /force /dependentloadflag:0x800 2>&1 | FileCheck %s --allow-empty --check-prefix NO-WARN27 28BASE: DependentLoadFlags: 0x029FLAGS-800: DependentLoadFlags: 0x80030FLAGS-400: DependentLoadFlags: 0x40031 32FAIL: lld-link: error: /dependentloadflag: invalid argument: zz33FAIL-RANGE: lld-link: error: /dependentloadflag: invalid argument: 0xf000034FAIL-NOARG: lld-link: error: /dependentloadflag: no argument specified35 36WARN-NOBASE: lld-link: warning: _load_config_used not found, /dependentloadflag will have no effect37NO-WARN-NOT: lld-link: warning: _load_config_used not found, /dependentloadflag will have no effect38