@@ -450,103 +450,3 @@ SECTIONS {
450450
451451# TO-DISCARD: error: section '.two_byte_section' cannot spill from/to /DISCARD/
452452# TO-DISCARD-WARN: warning: section '.two_byte_section' cannot spill from/to /DISCARD/
453-
454- #--- same-mem-region.lds
455- ## Spills to the same memory region that overflowed do not consume address assignment passes.
456- MEMORY {
457- a : ORIGIN = 0, LENGTH = 0
458- b : ORIGIN = 0, LENGTH = 3
459- c : ORIGIN = 3, LENGTH = 3
460- d : ORIGIN = 6, LENGTH = 3
461- }
462- SECTIONS {
463- CLASS(class) { *(.one_byte_section .two_byte_section) }
464- .a00 : { CLASS(class) } >a AT>c
465- .a01 : { CLASS(class) } >a AT>d
466- .a02 : { CLASS(class) } >a AT>d
467- .a03 : { CLASS(class) } >a AT>d
468- .a04 : { CLASS(class) } >a AT>d
469- .a05 : { CLASS(class) } >a AT>d
470- .a06 : { CLASS(class) } >a AT>d
471- .a07 : { CLASS(class) } >a AT>d
472- .a08 : { CLASS(class) } >a AT>d
473- .a09 : { CLASS(class) } >a AT>d
474- .a10 : { CLASS(class) } >a AT>d
475- .a11 : { CLASS(class) } >a AT>d
476- .a12 : { CLASS(class) } >a AT>d
477- .a13 : { CLASS(class) } >a AT>d
478- .a14 : { CLASS(class) } >a AT>d
479- .a15 : { CLASS(class) } >a AT>d
480- .a16 : { CLASS(class) } >a AT>d
481- .a17 : { CLASS(class) } >a AT>d
482- .a18 : { CLASS(class) } >a AT>d
483- .a19 : { CLASS(class) } >a AT>d
484- .a20 : { CLASS(class) } >a AT>d
485- .a21 : { CLASS(class) } >a AT>d
486- .a22 : { CLASS(class) } >a AT>d
487- .a23 : { CLASS(class) } >a AT>d
488- .a24 : { CLASS(class) } >a AT>d
489- .a25 : { CLASS(class) } >a AT>d
490- .a26 : { CLASS(class) } >a AT>d
491- .a27 : { CLASS(class) } >a AT>d
492- .a28 : { CLASS(class) } >a AT>d
493- .a29 : { CLASS(class) } >a AT>d
494- .a30 : { CLASS(class) } >a AT>d
495- .b : { CLASS(class) } >b AT>d
496- }
497-
498- # RUN: ld.lld -T same-mem-region.lds -o same-mem-region spill.o
499- # RUN: llvm-readelf -S same-mem-region | FileCheck %s --check-prefix=SAME-MEM-REGION
500-
501- # SAME-MEM-REGION: Name Type Address Off Size
502- # SAME-MEM-REGION: .b PROGBITS 0000000000000000 001000 000003
503-
504- #--- same-lma-region.lds
505- ## Spills to the same load region that overflowed do not consume address assignment passes.
506- MEMORY {
507- a : ORIGIN = 0, LENGTH = 0
508- b : ORIGIN = 0, LENGTH = 3
509- c : ORIGIN = 3, LENGTH = 3
510- d : ORIGIN = 6, LENGTH = 3
511- }
512- SECTIONS {
513- CLASS(class) { *(.one_byte_section .two_byte_section) }
514- .a00 : { CLASS(class) } >c AT>a
515- .a01 : { CLASS(class) } >d AT>a
516- .a02 : { CLASS(class) } >d AT>a
517- .a03 : { CLASS(class) } >d AT>a
518- .a04 : { CLASS(class) } >d AT>a
519- .a05 : { CLASS(class) } >d AT>a
520- .a06 : { CLASS(class) } >d AT>a
521- .a07 : { CLASS(class) } >d AT>a
522- .a08 : { CLASS(class) } >d AT>a
523- .a09 : { CLASS(class) } >d AT>a
524- .a10 : { CLASS(class) } >d AT>a
525- .a11 : { CLASS(class) } >d AT>a
526- .a12 : { CLASS(class) } >d AT>a
527- .a13 : { CLASS(class) } >d AT>a
528- .a14 : { CLASS(class) } >d AT>a
529- .a15 : { CLASS(class) } >d AT>a
530- .a16 : { CLASS(class) } >d AT>a
531- .a17 : { CLASS(class) } >d AT>a
532- .a18 : { CLASS(class) } >d AT>a
533- .a19 : { CLASS(class) } >d AT>a
534- .a20 : { CLASS(class) } >d AT>a
535- .a21 : { CLASS(class) } >d AT>a
536- .a22 : { CLASS(class) } >d AT>a
537- .a23 : { CLASS(class) } >d AT>a
538- .a24 : { CLASS(class) } >d AT>a
539- .a25 : { CLASS(class) } >d AT>a
540- .a26 : { CLASS(class) } >d AT>a
541- .a27 : { CLASS(class) } >d AT>a
542- .a28 : { CLASS(class) } >d AT>a
543- .a29 : { CLASS(class) } >d AT>a
544- .a30 : { CLASS(class) } >d AT>a
545- .b : { CLASS(class) } >d AT>b
546- }
547-
548- # RUN: ld.lld -T same-lma-region.lds -o same-lma-region spill.o
549- # RUN: llvm-readelf -S same-lma-region | FileCheck %s --check-prefix=SAME-LMA-REGION
550-
551- # SAME-LMA-REGION: Name Type Address Off Size
552- # SAME-LMA-REGION: .b PROGBITS 0000000000000006 001006 000003
0 commit comments