I write some code, then compile it (with WINAVR / GCC). Program variables that are created in ram have their memory addresses in that ram assigned by the compiler, and i can see what those addr are by looking in the .map file. No problems there.
But, i have some type def'd structures, containing various different types, and although the starting address, and size, of the declared struct is in the .map, i can't seem to find out the addr of the individuals items within that struct? Am i missing something obvious? avr-nm just returns the addr of the struct from the .elf for example, but the compiler must know where everything is, so the info must be in there somewhere right??
Any pointers (sic) to where i should look? ;-)
Psuedo code: define a struture Struct ( unsigned char VarOne unsigned int VarTwo unsigned long VarThree )mystruct declare an instance of that structure mystruct StructureOne
The .map file will tell me that StrutureOne is 7 bytes long at starts at 0x00800010 for example
But it doesn't (i think) tell me where StrutureOne.VarTwo lives? Ok, i KNOW it's at 0x00800011 because i can look at the layout of the structure, but surely there is someway of getting that info from the compiler?