How to not-optimize my code generated by Matlab coder

9 visualizzazioni (ultimi 30 giorni)
I have a function named top()
top()
{
f1(p1, p2, p3);
f2(p3,p4,p5);
f2(p6, p7, p8);
}
I use f2 and f1 as entry point to generate the code, and use top() as reference. But in the generated code, f1 is optimized out. f2 is generated into to version. f2_1(), and f2_2() for each f2 call respectively. It is not what I want.
I want to generate f1 and f2 as it is without changing on interface (including all the argument not changed. how the top() call f1() and f2() not changed). How to do it?
Thanks!

Risposta accettata

Denis Gurchenkov
Denis Gurchenkov il 27 Feb 2018
Modificato: Denis Gurchenkov il 27 Feb 2018
If you want to generate f1 and f2 "as is" then you need to make them to be entry points, that is,
codegen f1 -args {f1's args here} ...
codegen f2 -args {f2's args here} ...
or you can do in one go:
codegen f1 -args {...} f2 -args {...}
or you can also add top
codegen f1 -args {...} f2 -args {...} top -args {top's args}
There is no reliable way to generate code for top() as an entry point without f1, f2 being entry point as well, and have f1 and f2 have exactly the right signatures that you want.

Più risposte (0)

Categorie

Scopri di più su MATLAB Coder in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by