2 # RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t.o
3 # RUN: ld.lld %t.o --section-start .text=0x100000 \
4 # RUN: --section-start=.data=0x110000 --section-start .bss=0x200000 -o %t
5 # RUN: llvm-objdump --section-headers %t | FileCheck %s
8 # CHECK-NEXT: Idx Name Size VMA Type
9 # CHECK-NEXT: 0 00000000 0000000000000000
10 # CHECK-NEXT: 1 .text 00000001 0000000000100000 TEXT
11 # CHECK-NEXT: 2 .data 00000004 0000000000110000 DATA
12 # CHECK-NEXT: 3 .bss 00000004 0000000000200000 BSS
14 ## The same, but dropped "0x" prefix.
15 # RUN: ld.lld %t.o --section-start .text=100000 \
16 # RUN: --section-start .data=110000 --section-start .bss=0x200000 -o %t1
17 # RUN: llvm-objdump --section-headers %t1 | FileCheck %s
19 ## Use -Ttext, -Tdata, -Tbss as replacement for --section-start:
20 # RUN: ld.lld %t.o -Ttext=0x100000 -Tdata=0x110000 -Tbss=0x200000 -o %t4
21 # RUN: llvm-objdump --section-headers %t4 | FileCheck %s
23 ## The same, but dropped "0x" prefix.
24 # RUN: ld.lld %t.o -Ttext=100000 -Tdata=110000 -Tbss=200000 -o %t5
25 # RUN: llvm-objdump --section-headers %t5 | FileCheck %s
27 ## Check form without assignment:
28 # RUN: ld.lld %t.o -Ttext 0x100000 -Tdata 0x110000 -Tbss 0x200000 -o %t4
29 # RUN: llvm-objdump --section-headers %t4 | FileCheck %s
32 # RUN: not ld.lld %t.o --section-start .text100000 -o /dev/null 2>&1 \
33 # RUN: | FileCheck -check-prefix=ERR1 %s
34 # ERR1: invalid argument: --section-start .text100000
36 # RUN: not ld.lld %t.o --section-start .text=1Q0000 -o /dev/null 2>&1 \
37 # RUN: | FileCheck -check-prefix=ERR2 %s
38 # ERR2: invalid argument: --section-start .text=1Q0000
40 # RUN: not ld.lld %t.o -Ttext=1w0000 -o /dev/null 2>&1 \
41 # RUN: | FileCheck -check-prefix=ERR3 %s
42 # ERR3: invalid argument: -Ttext=1w0000
44 # RUN: not ld.lld %t.o -Tbss=1w0000 -o /dev/null 2>&1 \
45 # RUN: | FileCheck -check-prefix=ERR4 %s
46 # ERR4: invalid argument: -Tbss=1w0000
48 # RUN: not ld.lld %t.o -Tdata=1w0000 -o /dev/null 2>&1 \
49 # RUN: | FileCheck -check-prefix=ERR5 %s
50 # ERR5: invalid argument: -Tdata=1w0000