[coreboot-gerrit] Patch merged into coreboot/master: f69a99d coreboot: x86: enable gc-sections

gerrit at coreboot.org gerrit at coreboot.org
Tue Mar 17 14:35:34 CET 2015


the following patch was just integrated into master:
commit f69a99dbf843da7f4c2b4965004140d2ea83cd67
Author: Aaron Durbin <adurbin at chromium.org>
Date:   Tue Mar 10 11:45:25 2015 -0500

    coreboot: x86: enable gc-sections
    
    Garbage collected sections allow for trimming the size of the
    binaries as well as allowing for not needing to config off
    unused functions. To that end, on a rambi build the following
    differences are observed:
    
    $ diff -up \
    	<(readelf -l coreboot-builds/google_rambi/cbfs/fallback/ramstage.elf) \
    	<(readelf -l coreboot-builds/google_rambi_gc_sections/cbfs/fallback/ramstage.elf)
    --- /dev/fd/63  2015-03-10 12:07:27.927985430 -0500
    +++ /dev/fd/62  2015-03-10 12:07:27.927985430 -0500
    @@ -6,9 +6,9 @@ There are 4 program headers, starting at
     Program Headers:
       Type           Offset   VirtAddr   PhysAddr   FileSiz MemSiz  Flg
    Align
       LOAD           0x001000 0x00000000 0x00000000 0x00040 0x00040 RWE 0
    -  LOAD           0x001040 0x00000040 0x00000040 0x34560 0x34560 RWE 0
    -  LOAD           0x0355a0 0x000345a0 0x000345a0 0x02578 0x02578 RWE 0
    -  LOAD           0x037b18 0x00036b18 0x00036b18 0x00000 0x0b560     0
    +  LOAD           0x001040 0x00000040 0x00000040 0x2cbf8 0x2cbf8 RWE 0
    +  LOAD           0x02dc38 0x0002cc38 0x0002cc38 0x02208 0x02208 RWE 0
    +  LOAD           0x02fe40 0x0002ee40 0x0002ee40 0x00000 0x0a888     0
    
      Section to Segment mapping:
       Segment Sections...
    
    $ diff -up \
    	<(readelf -l coreboot-builds/google_rambi/cbfs/fallback/romstage.elf) \
    	<(readelf -l coreboot-builds/google_rambi_gc_sections/cbfs/fallback/romstage.elf)
    --- /dev/fd/63  2015-03-10 12:08:16.855985880 -0500
    +++ /dev/fd/62  2015-03-10 12:08:16.851985880 -0500
    @@ -5,8 +5,8 @@ There are 1 program headers, starting at
    
     Program Headers:
       Type           Offset   VirtAddr   PhysAddr   FileSiz MemSiz  Flg
    Align
    -  LOAD           0x000060 0xfff20000 0xfff20000 0x08b81 0x08b81 R E
       0x10
    +  LOAD           0x000060 0xfff20000 0xfff20000 0x06300 0x06300 R E
    0x10
    
      Section to Segment mapping:
       Segment Sections...
    -   00     .rom .text
    +   00     .rom
    
    The following warnings needed to be applied to CFLAGS_common because for
    some reason gcc was miraculously emitting the warnings with the
    unrelated *-sections options:
      -Wno-unused-but-set-variable
    
    Change-Id: I210784fdfc273ce4cb9927352cbd5a51be3c6929
    Signed-off-by: Aaron Durbin <adurbin at chromium.org>
    Reviewed-on: http://review.coreboot.org/8635
    Tested-by: build bot (Jenkins)
    Reviewed-by: Patrick Georgi <pgeorgi at google.com>
    Reviewed-by: Paul Menzel <paulepanter at users.sourceforge.net>


See http://review.coreboot.org/8635 for details.

-gerrit



More information about the coreboot-gerrit mailing list