| 日本−日本語 |
|
|
|
![]() |
HP aC++ バージョン A.03.55 リリースノート > 第1章 HP aC++ リリースノートバージョン A.03.50 の新機能 |
|
HP aC++ バージョン A.03.50 では、次の新機能がサポートされました。 -AA オプションを指定した PCH (プリコンパイラヘッダー) が完全にサポートされました。これにより、PCH 機能が STL (Standard Template Library) と共に使用できます。 このオプションを使用して、オプティマイザのクローン生成機能をオン/オフに切り替えることができます。主に、クローンが多いとコードの性能に悪影響を受けるような場合に、クローンを抑制するのに使用します。 デフォルトの設定はオンです。最適化レベル +O3 および +O4 で有効になります。インライン展開がオフに設定されていると、クローン生成もオフに設定されます。 このオプションを使用して、メモリーの最適化を有効/無効にすることができます。また、malloc をリストに指定すると、メモリー割り当てのプロシージャコールを伴った最適化を有効/無効にします。このオプションは、デフォルトの設定では「無効」です。また、+Oopenmp および +Oparallel と互換性が無いので、+Oopenmp および +Oparallel オプションが有効になっている場合にはこのオプションは無視されます。 PA8800 プロセッサのキャッシュ行のサイズが長くなったため (128 bytes)、コンパイラが、データのプリフェッチとデータの局所性を改良した効率的なコードを生成できるようになりました。これにより、ループが多用されているアプリケーションのパフォーマンスが向上されます。 try/catch 文が含まれるコード部に対して、コンパイラは、さらにロバスト性の高い最適化を行うようになりました。これにより、大量の例外処理をもつ C++ アプリケーションのパフォーマンスが向上されます。これは、+Oexception オプションを指定すると有効になります。 これは C99 の機能です。restrict キーワード は、ポインターを修飾し、restrict として宣言したポインター変数が別名定義されていないことをオプティマイザに示すのに使用します。これにより、オプティマイザは別名定義の解析を効率よく行うことができます。 このリリースでは、restrict キーワードのみをサポートし、この機能による最適化は行われません。 最適化レベル +O3/+O4 のロバスト性と有用性が C++ アプリケーションのために改良されました。これにより、C++ で書かれたユーザーアプリケーションのパフォーマンスが向上します。 gdb の 新しい steplast コマンドを使用するには、-g0 オプションのみを指定して C++ プログラムをビルドする必要があります。
+Olit オプションは、読み取り専用データセクションに配置されるデータ項目の型を指定します。+Olit には all または none の値を指定することができます。 +Olit=all は、すべての文字列変数と、ロード時や実行時の初期化を必要としないすべての定数修飾変数を読み取り専用データセクションに配置します。 +Olit=none を指定した場合、定数は読み取り専用データセクションに配置されません。 共有ライブラリ libCsup に直接的または間接的に依存していた C++ 共有ライブラリが、安全に動的ロードおよびアンロードできるようになりました。今後は、main が C++ 以外の実行可能プログラムをビルドするときに、リンク行に -lCsup を指定する必要はありません。 プラグマ INIT および FINI が 32 ビットモードでも実行できるようになりました。これらのプラグマの機能は 64 ビットモードと同じです。詳細は、aCC のオンラインヘルプ (aCC +help) を参照してください。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||