FastSemihosting and InstrumentingProfiler Warnings

Sysprogs forums Forums VisualGDB FastSemihosting and InstrumentingProfiler Warnings

Viewing 3 posts - 1 through 3 (of 3 total)
  • Author
    Posts
  • #21444
    Seidleroni
    Participant

    When I compile my STM32 project that includes FastSemihosting and the InstrumentingProfiler, I get a handful of warnings. Obviously the project works even with these warnings, but it would be great to update these files so they compile without warnings. Would it be possible to have these updated?

     

    Severity Code Description Project File Line Suppression State
    Warning unused variable ‘pSemihostingStruct’ [-Wunused-variable] _visualgdb C:\Users\xxxx\AppData\Local\VisualGDB\EmbeddedEFPs\Profiler\FastSemihosting.cpp 56
    Warning comparison between signed and unsigned integer expressions [-Wsign-compare] _visualgdb C:\Users\jseidmann\AppData\Local\VisualGDB\EmbeddedEFPs\Profiler\FastSemihosting.cpp 261
    Warning comparison between signed and unsigned integer expressions [-Wsign-compare] _visualgdb C:\Users\jseidmann\AppData\Local\VisualGDB\EmbeddedEFPs\Profiler\FastSemihosting.cpp 264
    Warning comparison between signed and unsigned integer expressions [-Wsign-compare] _visualgdb C:\Users\jseidmann\AppData\Local\VisualGDB\EmbeddedEFPs\Profiler\InstrumentingProfiler.cpp 218
    Warning comparison between signed and unsigned integer expressions [-Wsign-compare] _visualgdb C:\Users\jseidmann\AppData\Local\VisualGDB\EmbeddedEFPs\Profiler\InstrumentingProfiler.cpp 705
    Warning comparison between signed and unsigned integer expressions [-Wsign-compare] _visualgdb C:\Users\jseidmann\AppData\Local\VisualGDB\EmbeddedEFPs\Profiler\InstrumentingProfiler.cpp 717
    Warning comparison between signed and unsigned integer expressions [-Wsign-compare] _visualgdb C:\Users\jseidmann\AppData\Local\VisualGDB\EmbeddedEFPs\Profiler\InstrumentingProfiler.cpp 738
    Warning this ‘if’ clause does not guard… [-Wmisleading-indentation] _visualgdb C:\Users\jseidmann\AppData\Local\VisualGDB\EmbeddedEFPs\Profiler\FastSemihosting.cpp 287

    <hr />

    1>C:/Users/xxxx/AppData/Local/VisualGDB/EmbeddedEFPs/Profiler/FastSemihosting.cpp: In function ‘void InitializeFastSemihosting()’:
    1>C:\Users\xxxx\AppData\Local\VisualGDB\EmbeddedEFPs\Profiler\FastSemihosting.cpp(56,8): warning : unused variable ‘pSemihostingStruct’ [-Wunused-variable]
    1> void *pSemihostingStruct = &s_FastSemihostingState;
    1> ^~~~~~~~~~~~~~~~~~
    1>C:/Users/xxxx/AppData/Local/VisualGDB/EmbeddedEFPs/Profiler/FastSemihosting.cpp: In function ‘int SysprogsProfiler_WriteData(ProfilerDataChannel, const void*, unsigned int, const void*, unsigned int)’:
    1>C:\Users\xxxx\AppData\Local\VisualGDB\EmbeddedEFPs\Profiler\FastSemihosting.cpp(261,18): warning : comparison between signed and unsigned integer expressions [-Wsign-compare]
    1> if (done != headerSize)
    1> ~~~~~^~~~~~~~~~~~~
    1>C:\Users\xxxx\AppData\Local\VisualGDB\EmbeddedEFPs\Profiler\FastSemihosting.cpp(264,18): warning : comparison between signed and unsigned integer expressions [-Wsign-compare]
    1> if (done != payloadSize)
    1> ~~~~~^~~~~~~~~~~~~~
    1>C:/Users/xxxx/AppData/Local/VisualGDB/EmbeddedEFPs/Profiler/FastSemihosting.cpp: In function ‘void SuspendFastSemihostingPolling()’:
    1>C:\Users\xxxx\AppData\Local\VisualGDB\EmbeddedEFPs\Profiler\FastSemihosting.cpp(287,5): warning : this ‘if’ clause does not guard… [-Wmisleading-indentation]
    1> if (!CanInvokeSemihostingCalls())
    1> ^~
    1>C:\Users\xxxx\AppData\Local\VisualGDB\EmbeddedEFPs\Profiler\FastSemihosting.cpp(290,2): note : …this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
    1> asm volatile(“mov r0, %1; mov r1, %0; bkpt %a2″::”r” (0), “r” (SysprogsSemihostingReasonBase + kControlFastSemihostingPolling), “i” (AngelSWI) : “r0”, “r1”, “r2”, “r3”, “ip”, “lr”, “memory”, “cc”);
    1> ^~~
    1>stm32f7xx_hal_flash.c
    1>stm32f7xx_hal_flash_ex.c
    1>stm32f7xx_hal_gpio.c
    1>stm32f7xx_hal_i2c.c
    1>C:/Users/xxxx/AppData/Local/VisualGDB/EmbeddedEFPs/Profiler/InstrumentingProfiler.cpp: In member function ‘SysprogsInstrumentingProfiler::InstrumentedFrame* SysprogsInstrumentingProfiler::InstrumentedFramePool::AllocateFrame()’:
    1>C:\Users\xxxx\AppData\Local\VisualGDB\EmbeddedEFPs\Profiler\InstrumentingProfiler.cpp(218,35): warning : comparison between signed and unsigned integer expressions [-Wsign-compare]
    1> for (int i = 0; i < __countof(m_FramePool) – 1; i++)
    1> ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    1>stm32f7xx_hal_i2c_ex.c
    1>C:/Users/xxxx/AppData/Local/VisualGDB/EmbeddedEFPs/Profiler/InstrumentingProfiler.cpp: In function ‘void SysprogsProfiler_RTOSThreadSwitched(void*, const char*, void*)’:
    1>C:\Users\xxxx\AppData\Local\VisualGDB\EmbeddedEFPs\Profiler\InstrumentingProfiler.cpp(705,27): warning : comparison between signed and unsigned integer expressions [-Wsign-compare]
    1> for (int i = 0; i < __countof(SysprogsInstrumentingProfiler::s_AllThreadRecords); i++)
    1> ^
    1>C:\Users\xxxx\AppData\Local\VisualGDB\EmbeddedEFPs\Profiler\InstrumentingProfiler.cpp(717,27): warning : comparison between signed and unsigned integer expressions [-Wsign-compare]
    1> for (int i = 0; i < __countof(SysprogsInstrumentingProfiler::s_AllThreadRecords); i++)
    1> ^
    1>C:/Users/xxxx/AppData/Local/VisualGDB/EmbeddedEFPs/Profiler/InstrumentingProfiler.cpp: In function ‘void SysprogsProfiler_RTOSThreadDeleted(void*)’:
    1>C:\Users\xxxx\AppData\Local\VisualGDB\EmbeddedEFPs\Profiler\InstrumentingProfiler.cpp(738,23): warning : comparison between signed and unsigned integer expressions [-Wsign-compare]
    1> for (int i = 0; i < __countof(SysprogsInstrumentingProfiler::s_AllThreadRecords); i++)
    1> ^

    #21447
    support
    Keymaster

    Hi,

    No problem. We have rechecked our profiler framework in the maximum warning mode and took care of the most issues. Please update to the latest 2.17 package.

    If you would like to resolve any further advanced warnings, please send us a patch based on the v2.17  package source and we should be able to integrate it into our source tree (as long as it doesn’t break any functionality).

    #21450
    Seidleroni
    Participant

    That resolved all of the warnings, thank you very much.

Viewing 3 posts - 1 through 3 (of 3 total)
  • You must be logged in to reply to this topic.