How can I make Embedded Coder use "memset" instead of enormous hard-coded constants?

3 visualizaciones (últimos 30 días)
How can I make Embedded Coder use "memset" instead of enormous hard-coded constants?
I have a constant block containing an array with 100e3 elements. I have enabled "Use memset to initialize floats and doubles to 0.0", but this constant shows up as 100e3 hard-coded zeros in the "*.c" generated code file. This constant takes up more than 6000 lines of code--all zeros.
Run below command in MATLAB 2016b for documentation:
>> web(fullfile(docroot, 'simulink/gui/use-memset-to-initialize-floats-and-doubles-to-0-0.html'))
Or for latest release documentation on using memset to initialize floats and doubles to 0.0, please refer to:

Respuesta aceptada

MathWorks Support Team
MathWorks Support Team el 19 de Abr. de 2023
Editada: MathWorks Support Team el 19 de Abr. de 2023
Make sure that the "Inline invariant signals" optimization has been enabled.
Run below command in MATLAB 2016b for documentation:
>> web(fullfile(docroot, 'simulink/gui/inline-invariant-signals.html'))
Or for latest release documentation on inline invariant signals, please refer to:
This setting can interact with using "memset" such that "memset" is not used unless "Inline invariant signals" has been enabled.

Más respuestas (0)

Etiquetas

Aún no se han introducido etiquetas.

Productos


Versión

R2016b

Community Treasure Hunt

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

Start Hunting!

Translated by