In the standard linker script __bss_start gets the value of . at the start
of .bss, which immediately follows .data. .data ends with a 2-byte
alignment instruction. I don't see how __bss_start would end up at an odd
address in that situation.
Peter
On Thu, Feb 21, 2013 at 1:56 PM, Robert Henig <rhe...@redwoodsys.com> wrote:
> It looks like the bss init loop is starting one byte ahead of where it
> should. I suspect the problem is from the "src/fixture_wall_switch.o" entry
> in the map file shown below.
>
> .bss 0x0000029e 0x0 src/escape_seq.o
> .bss 0x0000029e 0x1 src/fixture_wall_switch.o
> .bss 0x0000029f 0x0 src/i2c.o
>
> Later I get:
>
> 0x0000029f PROVIDE (__bss_start, .)
>
> But __bss_start should be 0x0000029e.
>
> The net result is that the first byte in .data is zero instead of its
> correct initialized value.
>
> I confirmed that __bss_start is 0x029f and __bss_size is correct in the
> debugger.
>
> Why would "src/fixture_wall_switch.o" be allocated one byte but not show
> any symbol for that allocation?
>
> Any help? I can provide more details but I think this is the crux of the
> situation.
>
> Thanks,
> Bob.
>
> ------------------------------------------------------------------------------
> Everyone hates slow websites. So do we.
> Make your web apps faster with AppDynamics
> Download AppDynamics Lite for free today:
> http://p.sf.net/sfu/appdyn_d2d_feb
> _______________________________________________
> Mspgcc-users mailing list
> Mspgcc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/mspgcc-users
>
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_feb
_______________________________________________
Mspgcc-users mailing list
Mspgcc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mspgcc-users