Why would polyspace report "memset is dead code"

6 visualizaciones (últimos 30 días)
Tommy
Tommy el 7 de Ag. de 2014
Respondida: Alexandre De Barros el 13 de Ag. de 2014
After the "Intermediate" part is done, the Full Log shows
memset is dead code
(along with other Standard C functions). I am using memset in many places and have not stubbed it myself. What can I do to make these messages go away? This is with R2013a.
I understand what dead code is and that polyspace does report any unused function of mine as dead code. But why would it report Standard C functions as dead? I'm puzzled...
  2 comentarios
Iain
Iain el 7 de Ag. de 2014
Maybe there is a call to memset that cannot be reached due to a logic error in an if or while statement?
Tommy
Tommy el 8 de Ag. de 2014
@Iain: My understanding is that this would be a case of "unreachable" code, marked as a gray UNR. Dead code usually means "This function isn't called anywhere; it can be eliminated." With several non-gray calls, memset can't be dead code.

Iniciar sesión para comentar.

Respuesta aceptada

Alexandre De Barros
Alexandre De Barros el 13 de Ag. de 2014
Hello!
For performance and precision reasons, Polyspace is creating inner versions of memset (and also other memory related functions) and actually calling these versions, even if you don't see it in the results. Hence, the "original" version of memset is not called. This internal information appears in the log, but should be ignored.
Alex

Más respuestas (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by