coder.isRowMajor - Determine whether the current function or variable uses row-major

        layout - MATLAB ([original](https://in.mathworks.com/help/coder/ref/coder.isrowmajor.html)) ([raw](?raw))

Main Content

Determine whether the current function or variable uses row-major layout

Syntax

Description

coder.isRowMajor resolves as true in the generated code if the current function uses row-major array layout. Use the function as the expression in control flow (if, else,switch) statements.

example

coder.isRowMajor([arg](#d126e17717)) resolves as true if the current variable uses row-major array layout.

example

Examples

collapse all

To query the array layout of a function at compile time, usecoder.isRowMajor orcoder.isColumnMajor. This query can be useful for specializing your generated code when it involves row-major and column-major functions. For example, consider this function:

function S = addMatrixRouted(A,B) if coder.isRowMajor %execute this code if row major S = addMatrix_OptimizedForRowMajor(A,B); elseif coder.isColumnMajor %execute this code if column major S = addMatrix_OptimizedForColumnMajor(A,B); end

The function addMatrixRouted behaves differently depending on whether it uses row-major layout or column-major layout. The layout that the function uses, for example, can depend on whether it is called from a function that contains coder.rowMajor orcoder.columnMajor. WhenaddMatrixRouted uses row-major layout, it calls theaddMatrix_OptimizedForRowMajor function, which has efficient memory access for row-major data. When the function uses column-major layout, it calls a version of the addMatrix function optimized for column-major data.

By using the query functions, the generated code foraddMatrixRouted provides efficient memory access for either choice of array layout.

Consider the function foo:

function foo coder.rowMajor; x = magic(3); if coder.isRowMajor(x) fprintf('This will always be displayed in generated code.\n'); else fprintf('This will never be displayed in generated code.\n'); end end

Generate code:

To run the MEX function, enter:

Input Arguments

collapse all

Variable to query for array layout.

Example: coder.isRowMajor(x);

Limitations

Tips

Extended Capabilities

Version History

Introduced in R2018a