CompileTimeRecursionLimit
|
For compile-time recursion, control the number of copies of a function that are allowed
in the generated code. To disallow recursion in the MATLAB® code, set CompileTimeRecursionLimit to 0. The default
compile-time recursion limit is high enough for most recursive functions that require
compile-time recursion. If code generation fails because of the compile-time recursion limit,
and you want compile-time recursion, try to increase the limit. Alternatively, change your
MATLAB code so that the code generator uses run-time recursion
Default: integer , 50 |
ConstantFoldingTimeout
|
Maximum number of constant folder instructions
Specify, as a positive integer, the maximum number of instructions to be executed by the
constant folder.
Default: 10000 |
DynamicMemoryAllocation
|
Dynamic memory allocation for variable-size data
By default, when this property is set to 'Threshold' , dynamic memory
allocation is enabled for all variable-size arrays whose size is greater than
DynamicMemoryAllocationThreshold and fiaccel
allocates memory for this variable-size data dynamically on the heap. Set this property to
'Off' to allocate memory statically on the stack. Set it
to'AllVariableSizeArrays' to allocate memory for all variable-size arrays
dynamically on the heap . You must use dynamic memory allocation for all unbounded
variable-size data.
This property, DynamicMemoryAllocation , is enabled only when
EnableVariableSizing is true . When you set
DynamicMemoryAllocation to `Threshold' , it enables
the DynamicMemoryAllocationThreshold property.
Default: Threshold |
DynamicMemoryAllocationThreshold
|
Memory allocation threshold
Specify the integer size of the threshold for variable-size arrays above which
fiaccel allocates memory on the heap.
Default: 65536 |
EnableAutoExtrinsicCalls
|
Specify whether fiaccel treats common visualization functions as
extrinsic functions. When this option is enabled, fiaccel detects calls
to many common visualization functions, such as plot ,
disp , and figure . It calls out to MATLAB for these functions. This capability reduces the amount of time that you spend
making your code suitable for code generation. It also removes the requirement to declare
these functions extrinsic using the coder.extrinsic function.
Default: true |
EchoExpressions
|
Show results of code not terminated with semicolons
Set this property to true to have the results of code instructions
that do not terminate with a semicolon appear in the MATLAB Command Window. If you set this property to false , code
results do not appear in the MATLAB Command Window.
Default: true |
EnableRuntimeRecursion
|
Allow recursive functions in the generated code. If your MATLAB code requires run-time recursion and this parameter is false ,
code generation fails.
Default: true |
EnableDebugging
|
Compile generated code in debug mode
Set this property to true to compile the generated code in debug mode.
Set this property to false to compile the code in normal mode.
Default: false |
EnableVariableSizing
|
Variable-sized arrays support
Set this property to true to enable support for variable-sized arrays
and to enable the DynamicMemoryAllocation property. If you set this
property to false , variable-sized arrays are not supported.
Default: true |
ExtrinsicCalls
|
Extrinsic function calls
An extrinsic function is a function on the MATLAB path that the generated code dispatches to MATLAB software for execution. fiaccel does not compile or
generate code for extrinsic functions. Set this property to true to have
fiaccel generate code for the call to a MATLAB function, but not generate the function's internal code. Set this property to
false to have fiaccel ignore the extrinsic function
and not generate code for the call to the MATLAB function. If the extrinsic function affects the output of
fiaccel , a compiler error occurs.
ExtrinsicCalls affects how MEX functions built by
fiaccel generate random numbers when using the MATLAB
rand , randi , and randn
functions. If extrinsic calls are enabled, the generated mex function uses the MATLAB global random number stream to generate random numbers. If extrinsic calls are
not enabled, the MEX function built with fiaccel uses a self-contained
random number generator.
If you disable extrinsic calls, the generated MEX function cannot display run-time
messages from error or assert statements in your
MATLAB code. The MEX function reports that it cannot display the error message. To see
the error message, enable extrinsic function calls and generate the MEX function again.
Default: true |
GenerateReport
|
Code generation report
Set this property to true to create an HTML code generation report.
Set this property to false to not create the report.
Default: false |
GlobalDataSyncMethod
|
MEX function global data synchronization with MATLAB global workspace
Set this property to SyncAlways so synchronize global data at MEX
function entry and exit and for all extrinsic calls to ensure maximum consistency between
MATLAB and the generated MEX function. If the extrinsic calls do not affect global
data, use this option in conjunction with the coder.extrinsic
-sync:off option to turn off synchronization for these calls to maximize
performance.
If you set this property to SyncAtEntryAndExits , global data is
synchronized only at MEX function entry and exit. If your code contains extrinsic calls, but
only a few affect global data, use this option in conjunction with the
coder.extrinsic
-sync:on option to turn on synchronization for these calls to maximize
performance.
If you set this property to NoSync , no synchronization occurs. Ensure
that your MEX function does not interact with MATLAB globals before disabling synchronization otherwise inconsistencies between
MATLAB and the MEX function might occur.
Default: SyncAlways |
InlineStackLimit
|
Stack size for inlined functions
Specify, as a positive integer, the stack size limit on inlined functions.
Default: 4000 |
InlineThreshold
|
Maximum size of functions to be inlined
Specify, as a positive integer, the maximum size of functions to be inlined.
Default: 10 |
InlineThresholdMax
|
Maximum size of functions after inlining
Specify, as a positive integer, the maximum size of functions after inlining.
Default: 200 |
IntegrityChecks
|
Memory integrity
Set this property to true to detect any violations of memory integrity
in code generated for MATLAB. When a violation is detected, execution stops and a diagnostic message
displays. Set this property to false to disable both memory integrity
checks and the runtime stack.
Default: true |
LaunchReport
|
Code generation report display
Set this property to true to open the HTML code generation report
automatically when code generation completes. Set this property to false to
disable displaying the report automatically. This property applies only if you set the
GenerateReport property to true .
Default: true |
ReportPotentialDifferences
|
Specify whether to report potential behavior differences between generated code and
MATLAB code. If ReportPotentialDifferences is
true , the code generation report has a tab that lists the potential
differences. A potential difference is a difference that occurs at run time only under certain
conditions.
Default: true |
ResponsivenessChecks
|
Responsiveness checks
Set this property to true to turn on responsiveness checks. Set this
property to false to disable responsiveness checks.
Default: true |
SaturateOnIntegerOverflow
|
Integer overflow action
Overflows saturate to either the minimum or maximum value that the data type can
represent. Set this property to true to have overflows saturate. Set this
property to false to have overflows wrap to the appropriate value
representable by the data type.
Default: true |
StackUsageMax
|
Maximum stack usage per application
Specify, as a positive integer, the maximum stack usage per application in bytes. Set a
limit that is lower than the available stack size. Otherwise, a runtime stack overflow might
occur. Overflows are detected and reported by the C compiler, not by
fiaccel .
Default: 200000 |