12.07.2015 Views

RealView Compilation Tools コンパイラユーザガイド - ARM ...

RealView Compilation Tools コンパイラユーザガイド - ARM ...

RealView Compilation Tools コンパイラユーザガイド - ARM ...

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

診 断 メ ッ セージ6.9 データ フ ロー 警 告コ ンパイ ラ は、 最 適 化 処 理 の 一 環 と し てデータ フ ロー 分 析 を 実 行 し ます。 この 情 報 を 使 用 し て、 コー ド 内 の 潜 在 的 な 問 題 点 を 識 別 で き ます。 例 えば、 この 情 報 を 使 用 し て、 初 期 化 さ れていない 変 数 が 使 用 さ れた と き に 警 告 を 生 成できます。データ フ ロー 分 析 で 生 成 さ れる 警 告 は、 プ ロ セ ッ サレ ジ ス タ で 保 持 さ れているローカル 変 数 に 関 するものだけであり、 メモリで 保 持 されているグローバル 変 数 や、 ス タ ッ ク で 保 持 さ れてい る 変 数 ま たは 構 造 体 に 対 し ては 警 告 を 生成 しません。以 下 の 点 に 注 意 し て 下 さ い。• データ フ ロー 警 告 はデフ ォル ト で 生 成 さ れます (RVCT v2.0 以 前 では、-fa オプシ ョ ンが 指 定 さ れた 場 合 のみデータ フ ロー 警 告 が 生 成 さ れました)。• -O0 を 指 定 する と、-fa オプシ ョ ンが 指 定 されているかど う かにかかわらずデータ フ ロー 分 析 が 無 効 にな り ます。こ の 分 析 結 果 は、 使 用 する 最 適 化 レベルに よ って 異 な り ます。 つま り、 よ り高 い 最 適 化 レベルを 使 用 する と 、 低 い 最 適 化 レベルでは 表 示 さ れない 多 数 の警 告 が 表 示 さ れます。 例 えば、 以 下 の ソース コー ド を 使 用 する と 、 コ ンパ イラは -O2 で 警 告 "C3017W: i may be used before being set" を 生 成 し ます。int f(void){int i;return i++;}データ フ ロー 分 析 では、 問 題 があ る コー ド を 正 確 に 識 別 で き ません。 コ ンパイラによって 生 成 される C3017W 警 告 の 目 的 は、 発 生 する 可 能 性 があ る 問 題 を示 すこ と だけです。 コードを 正 確 に 分 析 するには、--diag_suppress=C3017 を 指 定し て こ の 警 告 を 非 表 示 に し、 Lint などのサー ド パーテ ィ 製 分 析 ツールを 使 用して 下 さい。<strong>ARM</strong> DUI 0205IJ Copyright © 2002-2010 <strong>ARM</strong> Limited. All rights reserved. 6-11ID 100419Non-Confidential,

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!