38 lines
914 B
ArmAsm
38 lines
914 B
ArmAsm
# REQUIRES: x86
|
|
# RUN: rm -rf %t && split-file %s %t
|
|
|
|
## Ensure that weak externals are considered during subsystem inference.
|
|
|
|
# RUN: llvm-mc -triple x86_64-windows-msvc -filetype obj -o %t/cui.obj %t/cui.s
|
|
# RUN: lld-link -out:%t/cui.exe %t/cui.obj
|
|
# RUN: llvm-readobj --file-headers %t/cui.exe | FileCheck --check-prefix=CUI %s
|
|
# RUN: llvm-mc -triple x86_64-windows-msvc -filetype obj -o %t/gui.obj %t/gui.s
|
|
# RUN: lld-link -out:%t/gui.exe %t/gui.obj
|
|
# RUN: llvm-readobj --file-headers %t/gui.exe | FileCheck --check-prefix=GUI %s
|
|
|
|
# CUI: Subsystem: IMAGE_SUBSYSTEM_WINDOWS_CUI
|
|
# GUI: Subsystem: IMAGE_SUBSYSTEM_WINDOWS_GUI
|
|
|
|
#--- cui.s
|
|
.global default_main
|
|
default_main:
|
|
ret
|
|
|
|
.weak main
|
|
main = default_main
|
|
|
|
.global mainCRTStartup
|
|
mainCRTStartup:
|
|
ret
|
|
|
|
#--- gui.s
|
|
.global default_WinMain
|
|
default_WinMain:
|
|
ret
|
|
|
|
.weak WinMain
|
|
WinMain = default_WinMain
|
|
|
|
.global WinMainCRTStartup
|
|
WinMainCRTStartup:
|
|
ret
|