# REQUIRES: x86
## Sections in an INSERT command are in a unit. Their order is preserved.

# RUN: split-file %s %t
# RUN: llvm-mc -filetype=obj -triple=x86_64 %t/a.s -o %t/a.o
# RUN: ld.lld -T %t/a.lds %t/a.o -o %t1
# RUN: llvm-readelf -S -l %t1 | FileCheck %s

# CHECK:      Name
# CHECK-NEXT:        NULL
# CHECK-NEXT: text.3
# CHECK-NEXT: text.4
# CHECK-NEXT: text.5
# CHECK-NEXT: .text
# CHECK-NEXT: .data
# CHECK-NEXT: text.6
# CHECK-NEXT: text.7
# CHECK-NEXT: text.8
# CHECK-NEXT: text.0
# CHECK-NEXT: text.1
# CHECK-NEXT: text.2

#--- a.lds
SECTIONS {
  text.0 : {}
  text.1 : {}
  text.2 : {}
} INSERT AFTER .data;

SECTIONS {
  text.3 : {}
  text.4 : {}
  text.5 : {}
} INSERT BEFORE .text;

SECTIONS {
  text.6 : {}
  text.7 : {}
  text.8 : {}
} INSERT AFTER .data;

#--- a.s
.text; nop
.section text.0,"ax"; nop
.section text.1,"ax"; nop
.section text.2,"ax"; nop
.section text.3,"ax"; nop
.section text.4,"ax"; nop
.section text.5,"ax"; nop
.section text.6,"ax"; nop
.section text.7,"ax"; nop
.section text.8,"ax"; nop
.data; .byte 0
