I have some code where I have functions that are declared inline, and I am compiling with -O3. Some of the functions are inlined, but not all of them. I have looked through the C++ compiler docs, and my functions meet the criteria for inlining set forth in the docs. If I add "#pragma FUNC_ALWAYS_INLINE;" before the functions, then the compiler does inline them, and my loops are pipelined as I would expect.
So, the question is why is the compiler deciding not to inline the functions unless I add "#pragma FUNC_ALWAYS_INLINE;"? Is there a compiler switch that will provide this information? Alternatively, is there a compiler switch that will make it more likely to do the inline for inlines that are explicitly marked? Or do I just need to the use the #pragma FUNC_ALWAYS_INLINE;?
TIA,
B.J.