24531904_j
24531904_j 24531904_j
割り込み : 特権操作フ ォル ト 予約レジスタ / フィールド ・フォルト シリアル化 : ソフ ト ウェアは、 変更されたPSR ビッ ト (PSR.i ビッ トを除く ) に依存する命令を発行す る前に、 デー タ ま たは命令のシ リ アル化操作を実行しなければな ら ない。 PSR.i ビッ ト は、 暗黙的にシ リ アル化 さ れる。 プ ロ セ ッ サは、 次の命令が実行 さ れる ま で、 外部割 り 込みがマス ク される よ う にする。 3:214 第 3 巻 : 命令リファレンス rsm
um rum ─ ユーザ・マスクのリセット (Reset User Mask) 書式 : (qp) rumimm 24 M44 説明 : imm24 オペラン ド の補数とユーザ ・ マスク (PSR{5:0}) と の論理積が取られ、 その結果が ユーザ ・ マスクに格納される。 第 2 巻、 第 1 部の 3.3.2 項 「プロセッサ ・ ステータス ・ レ ジスタ (PSR)」 を参照のこ と。 PSR.up は、 セキ ュ リ テ ィ ・ パフ ォ ーマンス ・ モニタ ・ ビ ッ ト (PSR.sp) がゼロの場合に限 りクリアされる。 そうでない場合は、 RSP.up は変更されない 操作 : if (PR[qp]) { if (is_reserved_field(PSR_TYPE, PSR_UM, imm 24 )) reserved_register_field_fault(); } if (imm 24 {1}) PSR{1} = 0; if (imm 24 {2} && PSR.sp == 0) //non-secure perf monitor PSR{2} = 0; if (imm 24 {3}) PSR{3} = 0; if (imm 24 {4}) PSR{4} = 0; if (imm 24{5}) PSR{5} = 0; 割り込み : 予約レ ジ ス タ / フィールド ・フォルト シリアル化 : すべてのユーザ ・ マスクの変更は、 次の命令グループによ って検出される。 第 3 巻 : 命令リファレンス 3:215
- Seite 175 und 176: mov indirect 操作 : if (PR[qp]) {
- Seite 177 und 178: mov ip mov ─ 命令ポインタ
- Seite 179 und 180: mov psr mov ─ プロセッサ・
- Seite 181 und 182: movl movl ─ ロング型即値の
- Seite 183 und 184: mux 図 2-27. Mux2 の例 (16 ビ
- Seite 185 und 186: nop nop ─ ノー・オペレー
- Seite 187 und 188: pack pack ─ パック (Pack) 書
- Seite 189 und 190: padd padd ─ 並列加算 (Paralle
- Seite 191 und 192: padd } 割り込み : 無効操作
- Seite 193 und 194: pavg 図 2-31. 並列平均での
- Seite 195 und 196: pavgsub pavgsub ─ 並列平均減
- Seite 197 und 198: pcmp pcmp ─ 並列比較 (Paralle
- Seite 199 und 200: pmax pmax ─ 並列最大値 (Para
- Seite 201 und 202: pmpy pmpy ─ 並列乗算 (Paralle
- Seite 203 und 204: pmpyshr 操作 : if (PR[qp]) { chec
- Seite 205 und 206: probe probe ─ アクセスのプ
- Seite 207 und 208: psad psad ─ 並列絶対差累計
- Seite 209 und 210: pshladd pshladd ─ 並列左シフ
- Seite 211 und 212: pshr } 割り込み : 無効操作
- Seite 213 und 214: psub psub ─ 並列減算 (Paralle
- Seite 215 und 216: psub } 割り込み : 無効操作
- Seite 217 und 218: ptc.g, ptc.ga ptc.g, ptc.ga ─ グ
- Seite 219 und 220: ptc.l ptc.l ─ ローカル・ト
- Seite 221 und 222: ptr 割り込み : 特権操作フ
- Seite 223 und 224: fi この命令を発行する前
- Seite 225: sm rsm ─ システム・マスク
- Seite 229 und 230: setf 操作 : if (PR[qp]) { fp_chec
- Seite 231 und 232: shladd shladd ─ 左シフトお
- Seite 233 und 234: shr shr ─ 右シフト (Shift Rig
- Seite 235 und 236: srlz srlz ─ シリアル化 (Seri
- Seite 237 und 238: st st ─ ストア (Store) 書式
- Seite 239 und 240: stf stf ─ 浮動小数点スト
- Seite 241 und 242: sub sub ─ 減算 (Subtract) 書
- Seite 243 und 244: sxt sxt ─ 符号拡張 (Sign Exte
- Seite 245 und 246: tak tak ─ トランスレーシ
- Seite 247 und 248: tbit PR[p2 ] = 0; } break; case ‘
- Seite 249 und 250: tnat tnat ─ Test Nat テスト (T
- Seite 251 und 252: tpa tpa ─ 物理アドレスへ
- Seite 253 und 254: unpack unpack ─ アンパック (
- Seite 255 und 256: xchg xchg ─ 交換 (Exchange) 書
- Seite 257 und 258: xma xma ─ 固定小数点積和 (
- Seite 259 und 260: xmpy xmpy ─ 固定小数点乗算
- Seite 261 und 262: zxt zxt ─ ゼロ拡張 (Zero Exte
- Seite 263 und 264: 擬似コード関数 3 この章
- Seite 265 und 266: 表 3-1. 擬似コード関数 (
- Seite 267 und 268: 表 3-1. 擬似コード関数 (
- Seite 269 und 270: 表 3-1. 擬似コード関数 (
- Seite 271 und 272: 表 3-1. 擬似コード関数 (
- Seite 273 und 274: 表 3-1. 擬似コード関数 (
- Seite 275 und 276: 命令形式 4 個々の Itanium ®
um<br />
rum ─ ユーザ・マスクのリセット (Reset User Mask)<br />
書式 : (qp) rumimm 24 M44<br />
説明 : imm24 オペラン ド の補数とユーザ ・ マスク (PSR{5:0}) と の論理積が取られ、 その結果が<br />
ユーザ ・ マスクに格納される。 第 2 巻、 第 1 部の 3.3.2 項 「プロセッサ ・ ステータス ・ レ<br />
ジスタ (PSR)」 を参照のこ と。<br />
PSR.up は、 セキ ュ リ テ ィ ・ パフ ォ ーマンス ・ モニタ ・ ビ ッ ト (PSR.sp) がゼロの場合に限<br />
りクリアされる。 そうでない場合は、 RSP.up は変更されない<br />
操作 : if (PR[qp]) {<br />
if (is_reserved_field(PSR_TYPE, PSR_UM, imm 24 ))<br />
reserved_register_field_fault();<br />
}<br />
if (imm 24 {1}) PSR{1} = 0;<br />
if (imm 24 {2} && PSR.sp == 0) //non-secure perf monitor<br />
PSR{2} = 0;<br />
if (imm 24 {3}) PSR{3} = 0;<br />
if (imm 24 {4}) PSR{4} = 0;<br />
if (imm 24{5}) PSR{5} = 0;<br />
割り込み : 予約レ ジ ス タ / フィールド ・フォルト<br />
シリアル化 : すべてのユーザ ・ マスクの変更は、 次の命令グループによ って検出される。<br />
第 3 巻 : 命令リファレンス 3:215