arm-none-eabi-gcc displaces zero-valued .data into .bss

OP #3173229
Rate this post
useful
not useful
I'm using a fairly current yargarto on a slightly older MacOS.  Specific 
details should be extractable from output.sh.

As I understand the distinction between linker sections .data and .bss:
- initialised data goes in .data
- uninitialised data goes in .bss
- data that goes in .bss is not guaranteed to be zero-valued

I think that my test shows that this version of gcc is putting:
- non-zero valued data in .data
- zero-valued data in .bss

Do people think that this is a fault?
Attached files:
Moderator #3173517
Rate this post
useful
not useful
James C. wrote:

> - data that goes in .bss is not guaranteed to be zero-valued

No.  Data in .bss are supposed to be zeroed out at startup by the
run-time startup code.  .data is meant for data being initialized
to non-zero values.  On microcontrollers, this is typically done
by copying over their initial values from flash (again, by the
run-time startup code).

Reply

Please log in before posting.

or

Log in with Google account

Registration is free and takes only a minute.

Register now