@@ -450,103 +450,3 @@ SECTIONS {
450
450
451
451
# TO-DISCARD: error: section '.two_byte_section' cannot spill from/to /DISCARD/
452
452
# 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