| # 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 |
| } |