Jul 11, 2021
12:02 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Jul 11, 2021
12:02 PM
Hi,
I had a couple of queries on understanding the memory map file for TC297TF. I have attached a part of the map file for the discussion.
1. In line no. 1006 of map file i.e SomeIpXf_Com_SystemSignal_StructWithinStruct_array [ustack_tc0:16,16]
Does it mean the API - "SomeIpXf_Com_SystemSignal_StructWithinStruct_array" uses 16 Bytes of stack ?
2. In line no. 1006 of map i.e SomeIpXf_Com_SystemSignal_StructWithinStruct_array [ustack_tc0:16,16], the call graph is as follows :
+-- SomeIpXf_Com_SystemSignal_StructWithinStruct_array [ustack_tc0:16,16]
| |
| +-- SomeIpXf_LSBtoMSB *
| |
| +-- SomeIpXf_AppendHeaderSR *
But in actual code, SomeIpXf_AppendHeaderSR is called before SomeIpXf_LSBtoMSB . Why is this not observed in the call graph?
3. In line no. 938 of map, SomeIpXf_Inv_Com_SystemSignal_U32_Deserialize [ustack_tc0:8,8]
In the Trace32 debugger [image_1 in attachment], the SP (stack pointer) goes up to +04 (in bytes = 4 ). So my assumption is, this particular API is consuming 4 bytes. But in the map file, it shows as
SomeIpXf_Inv_Com_SystemSignal_U32_Deserialize [ustack_tc0:8,8] i.e 8 Bytes of Stack usage. Why is such discrepancy ?
I had a couple of queries on understanding the memory map file for TC297TF. I have attached a part of the map file for the discussion.
1. In line no. 1006 of map file i.e SomeIpXf_Com_SystemSignal_StructWithinStruct_array [ustack_tc0:16,16]
Does it mean the API - "SomeIpXf_Com_SystemSignal_StructWithinStruct_array" uses 16 Bytes of stack ?
2. In line no. 1006 of map i.e SomeIpXf_Com_SystemSignal_StructWithinStruct_array [ustack_tc0:16,16], the call graph is as follows :
+-- SomeIpXf_Com_SystemSignal_StructWithinStruct_array [ustack_tc0:16,16]
| |
| +-- SomeIpXf_LSBtoMSB *
| |
| +-- SomeIpXf_AppendHeaderSR *
But in actual code, SomeIpXf_AppendHeaderSR is called before SomeIpXf_LSBtoMSB . Why is this not observed in the call graph?
3. In line no. 938 of map, SomeIpXf_Inv_Com_SystemSignal_U32_Deserialize [ustack_tc0:8,8]
In the Trace32 debugger [image_1 in attachment], the SP (stack pointer) goes up to +04 (in bytes = 4 ). So my assumption is, this particular API is consuming 4 bytes. But in the map file, it shows as
SomeIpXf_Inv_Com_SystemSignal_U32_Deserialize [ustack_tc0:8,8] i.e 8 Bytes of Stack usage. Why is such discrepancy ?
0 Replies
This widget could not be displayed.