lkml.org 
[lkml]   [2008]   [Feb]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 2/2] x86 : relocate uninitialized variable in init DATA section into init BSS section
    Ingo Molnar wrote:
    >
    > well, that's bad. We'd silently ignore the " = 1" and boot up with that
    > value at 0, right? At minimum we need some really prominent build-time
    > _errors_ (i.e. aborted builds) if this ever happens. But ideally,
    > shouldnt this whole thing be done at link time? Couldnt the linker sort
    > the variables that are zero initialized into the right section, and move
    > this constant maintenance pressure off the programmer's shoulder?
    >

    Not the linker (unless each variable is put in its own section)... the
    compiler could (should!) do it... unfortunately gcc failed to provide a
    way to specify rodata, data and bss sections for a single data item (on
    the assumption that if you specified a section, you already knew were it
    should be going.)

    What we really need is a new gcc extension:

    __attribute__((sections("data", "rodata", "bss")))

    ... where gcc stuffs it into the appropriate section depending on where
    it belongs, just as it does with undecorated data items.

    -hpa


    \
     
     \ /
      Last update: 2008-02-21 19:39    [W:0.049 / U:30.860 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site