coder.SingleConfig.addFunctionReplacement - Replace double-precision function with single-precision
function during single-precision conversion - MATLAB (original) (raw)
Main Content
Class: coder.SingleConfig
Namespace: coder
Replace double-precision function with single-precision function during single-precision conversion
Syntax
addFunctionReplacement(doubleFn,singleFn)
Description
addFunctionReplacement([doubleFn](#buyvf6f-doubleFn),[singleFn](#buyvf6f-singleFn))
specifies a function replacement in a coder.SingleConfig
object. During double-precision to single-precision conversion, the conversion process replaces the specified double-precision function with the specified single-precision function. The single-precision function must be in the same folder as the double-precision function or on the MATLABĀ® path. It is a best practice to provide unique names to local functions that a replacement function calls. If a replacement function calls a local function, do not give that local function the same name as a local function in a different replacement function file.
Input Arguments
Name of double-precision function, specified as a string.
Name of single-precision function, specified as a string.
Examples
Suppose that:
- The function
myfunc
calls a local functionmyadd
. - The test function
mytest
callsmyfunc
. - You want to replace calls to
myadd
with the single-precision functionsingle_myadd
.
Create a coder.SingleConfig
object, scfg
, with default settings.
scfg = coder.config('single');
Set the test file name. In this example, the test file function name is mytest
.
scfg.TestBenchName = 'mytest';
Specify that you want to replace the double-precision function, myadd
, with the single-precision function, single_myadd
.
scfg.addFunctionReplacement('myadd', 'single_myadd');
Convert the double-precision MATLAB function, myfunc
to a single-precision MATLAB function.
convertToSingle -config scfg myfunc
The double-precision to single-precision conversion replaces instances of myadd
with single_myadd
.
Version History
Introduced in R2015b