| # REQUIRES: x86 |
| # RUN: rm -rf %t && split-file %s %t && cd %t |
| # RUN: llvm-mc -filetype=obj -triple=x86_64 a.s -o a.o |
| |
| # RUN: not ld.lld a.o -T 1.lds 2>&1 | FileCheck %s --check-prefix=ERR1 |
| # ERR1: error: 1.lds:1: there is a cycle in linker script INCLUDEs |
| |
| # RUN: not ld.lld a.o -T 2a.lds 2>&1 | FileCheck %s --check-prefix=ERR2 |
| # ERR2: error: 2b.lds:1: there is a cycle in linker script INCLUDEs |
| |
| # RUN: ld.lld a.o -T 3.lds -o 3 |
| # RUN: llvm-objdump -s 3 | FileCheck %s --check-prefix=CHECK3 |
| # CHECK3: Contents of section foo: |
| # CHECK3-NEXT: 0000 2a2a ** |
| |
| #--- 0.lds |
| BYTE(42) |
| #--- 1.lds |
| INCLUDE "1.lds" |
| #--- 2a.lds |
| INCLUDE "2b.lds" |
| #--- 2b.lds |
| INCLUDE "2a.lds" |
| #--- 3.lds |
| SECTIONS { |
| foo : { INCLUDE "0.lds" INCLUDE "0.lds" } |
| } |
| |
| #--- a.s |
| .globl _start |
| _start: |
| ret |