Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

coder.allowpcode

名前空間: coder

P コード ファイルからのコード生成の制御

説明

coder.allowpcode('plain') を使用して、P コード ファイルを生成します。このファイルは、最適化された MEX 関数または組み込み可能 C/C++ コードにコンパイルすることができます。この関数は、生成された MEX 関数または組み込み可能 C/C++ コードを難読化しません。

この機能を使用すると、コード生成の最適化を提供するアルゴリズムを P コード ファイルとして分配できます。

この関数が最上位レベルの関数で呼び出されると、ifwhileswitch などの制御フロー ステートメントや関数呼び出しが発生します。

MATLAB® 関数は P コードを呼び出すことができます。ファイルの .m および .p バージョンが同じフォルダーに存在する場合、P コード ファイルが優先されます。

コード生成の範囲外では、関数 coder.allowpcode は無視されます。

すべて折りたたむ

入力の絶対値を返す関数 p_abs を記述します。

function out = p_abs(in)   %#codegen
% The directive %#codegen indicates that the function
% is intended for code generation
coder.allowpcode('plain');
out = abs(in);

P コード ファイルを生成します。MATLAB コマンド ウィンドウで次のように入力します。

pcode p_abs
P コード ファイル p_abs.p が現在のフォルダーに表示されます。

-args オプションを使用して入力パラメーター (MATLAB Coder™ ライセンスが必要) のサイズ、クラス、実数/複素数を指定し、p_abs.p の MEX 関数を生成します。

codegen p_abs -args { int32(0) }
codegen は現在のフォルダーに MEX 関数を生成します。

MATLAB Coder がある場合は、p_abs.p の組み込み可能な C コードを生成します。

codegen p_abs -config:lib -args { int32(0) };
codegen によって C ライブラリ コードが codegen\lib\p_abs フォルダー内に生成されます。

拡張機能

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

GPU コード生成
GPU Coder™ を使用して NVIDIA® GPU のための CUDA® コードを生成します。

バージョン履歴

R2011a で導入

参考

| (MATLAB Coder)