| # REQUIRES: x86 | |
| # RUN: echo '.section .text,"ax"; .quad 0' > %t.s | |
| # RUN: echo '.section .data,"aw"; .quad 0' >> %t.s | |
| # RUN: llvm-mc -filetype=obj -triple=x86_64 %t.s -o %t.o | |
| # RUN: ld.lld %t.o --script %s -o %t | |
| # RUN: llvm-readelf -l %t | FileCheck %s | |
| # CHECK: Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align | |
| # CHECK-NEXT: LOAD 0x001000 0x0000000000001000 0x0000000000001000 0x000008 0x000008 R E 0x1000 | |
| # CHECK-NEXT: LOAD 0x002000 0x0000000000002000 0x0000000000001008 0x000008 0x000008 RW 0x1000 | |
| MEMORY { | |
| FLASH (rx) : ORIGIN = 0x1000, LENGTH = 0x100 | |
| RAM (rwx) : ORIGIN = 0x2000, LENGTH = 0x100 | |
| } | |
| SECTIONS { | |
| .text : { *(.text*) } > FLASH | |
| __etext = .; | |
| .data : AT (__etext) { *(.data*) } > RAM | |
| } |