brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1013 B · f263833 Raw
43 lines · plain
1# REQUIRES: x862# RUN: llvm-mc %s -filetype=obj -o %t.obj -triple=x86_64-windows-msvc3# RUN: lld-link /entry:main /out:%t.exe /LARGEADDRESSAWARE:NO %t.obj4# RUN: llvm-readobj --coff-basereloc %t.exe | FileCheck %s --check-prefix=CHECKPASS5 6# This test case checks that the "ADDR32" relocation symbol is collected7# when linking a 64bit executable, and the output contains the HIGHLOW8# relocated symbol.9 10# Check that the HIGHLOW relocation base type is in the generated executable11# CHECKPASS: Format: COFF-x86-6412# CHECKPASS: Arch: x86_6413# CHECKPASS: AddressSize: 64bit14# CHECKPASS: BaseReloc15# CHECKPASS:   Entry {16# CHECKPASS-NEXT:     Type: HIGHLOW17 18    .text19    .def     main;20    .scl    2;21    .type   32;22    .endef23    .intel_syntax noprefix24    .globl  main25    .p2align        4, 0x9026 27main: # @main28    sub rsp, 4029 30    mov dword ptr [rip + arr + 24], 731 32    mov eax, 133    mov ecx, 2034    mov eax, dword ptr [rcx + 4 * rax + arr]35 36    ret37 38    .globl  arr39    .p2align        440arr:41    .zero 4042 43