GDB debugging call stack not showing up with ARM compiler 6.16

Seeing an issue of call stack not showing up while debugging the code. when debugger stops at some function in the code complete call stack frames are not displayed. This happens only with some applications.

With adding funwind-tables option in the compiler option, I dont see an issue. Also, checked that this option doesnt increase much code size (It increases only 8 bytes).

Can you please help to review and see if this option should be added to linker optimizations flag.

-funwind-tables documentation:

The static data mentioned for the -funwind-tables option is the frame unwind information, i.e. data that allows a running program to walk back the function call stack from a given execution point. Walking back the function call stack means moving from the execution context of a called function to the context of the caller, i.e. what normally happens when you return from a function, except that frame unwind information allows you to do that from an arbitrary point inside the body of a function; also you are not forced to actually exit the called function, you could simply "peek" inside the caller context (e.g. to retrieve the location from which the called function has been called), also recursively, but then continue the normal execution flow in the called function.