Files
clang-p2996/lld/test/COFF/Inputs/hello64.asm
Rui Ueyama fd99e01b91 COFF: Support import-by-ordinal DLL imports.
Symbols exported by DLLs can be imported not by name but by
small number or ordinal. Usually, symbols have both ordinals
and names, and in that case ordinals are called "hints" and
used by the loader as hints.

However, symbols can have only ordinals. They are called
import-by-ordinal symbols. You need to manage ordinals by hand
so that they will never change if you choose to use the feature.
But it's supposed to make dynamic linking faster because
it needs no string comparison. Not sure if that claim still
stands in year 2015, though. Anyways, the feature exists,
and this patch implements that.

llvm-svn: 238780
2015-06-01 21:05:27 +00:00

25 lines
514 B
NASM

;; ml64 hello64.asm /link /subsystem:windows /defaultlib:kernel32 \
;; /defaultlib:user32 /out:hello64.exe /entry:main
extern ExitProcess : PROC
extern MessageBoxA : PROC
extern ImportByOrdinal: PROC
.data
caption db 'Hello', 0
message db 'Hello World!', 0
.code
main PROC
sub rsp,28h
mov rcx, 0
lea rdx, message
lea r8, caption
mov r9d, 0
call MessageBoxA
mov ecx, 0
call ExitProcess
call ImportByOrdinal
main ENDP
END