1# REQUIRES: x86-registered-target
2
3.type foo,@function
4.size foo,12
5foo:
6    .space 10
7    nop
8    nop
9
10# RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o -g
11
12# RUN: llvm-symbolizer 0xa 0xb --print-address --obj=%t.o \
13# RUN:   | FileCheck %s --check-prefix=NORMAL
14# RUN: llvm-symbolizer 0x10a 0x10b --print-address --adjust-vma 0x100 --obj=%t.o \
15# RUN:   | FileCheck %s --check-prefix=ADJUST
16
17# Show that we can handle addresses less than the offset.
18# RUN: llvm-symbolizer 0xa 0xb --print-address --adjust-vma 0xc --obj=%t.o \
19# RUN:   | FileCheck %s --check-prefix=OVERFLOW
20
21# NORMAL:      0xa
22# NORMAL-NEXT: foo
23# NORMAL-NEXT: adjust-vma.s:7:0
24# NORMAL-EMPTY:
25# NORMAL-NEXT: 0xb
26# NORMAL-NEXT: foo
27# NORMAL-NEXT: adjust-vma.s:8:0
28
29# ADJUST:      0x10a
30# ADJUST-NEXT: foo
31# ADJUST-NEXT: adjust-vma.s:7:0
32# ADJUST-EMPTY:
33# ADJUST-NEXT: 0x10b
34# ADJUST-NEXT: foo
35# ADJUST-NEXT: adjust-vma.s:8:0
36
37# OVERFLOW:      0xa
38# OVERFLOW-NEXT: ??
39# OVERFLOW-NEXT: ??
40