ctrump/analyzer/var.h File Reference
変数アクセス
More...
#include "ctrump/ast/expr-code.h"
#include "ctrump/common/dll.h"
Go to the source code of this file.
|
Data Structures |
struct | ctrump_subscript_coef_array |
| N次元配列(ポインタのポインタではない)に対するアクセス. More...
|
struct | ctrump_subscript_terminal |
| (アドレス計算ではなく)実際にロードが行われる配列アクセス More...
|
struct | ctrump_subscript_coef_load_record |
| 構造体のロード More...
|
struct | ctrump_subscript_record_member |
| 構造体のメンバのアドレス計算 More...
|
struct | ctrump_subscript_record_member_terminal |
| 構造体のメンバのロード More...
|
struct | ctrump_subscript_nd |
| 配列添字 More...
|
struct | ctrump_subscript |
| メモリアクセスの添字 More...
|
struct | ctrump_memory_access |
| メモリアクセス ポインタと添字の組 More...
|
struct | ctrump_memory_load |
| メモリロード More...
|
struct | ctrump_memory_store |
| メモリストア More...
|
struct | ctrump_var_ref |
| 変数参照 More...
|
struct | ctrump_var_store |
| 変数へのストア More...
|
struct | ctrump_ordered_memory_load_store_node |
| 順序付けられたメモリロードストア More...
|
struct | ctrump_load_store_set |
| ロードストアの集合 mem_loads, mem_storesそれぞれにロード、ストア orderd_load_store にプログラム実行順序どおりに順序付けられたロード、ストアが入る More...
|
struct | ctrump_phi_node |
| phiノード More...
|
struct | ctrump_pdg_reductive_expr |
| 縮約演算 i = i op value More...
|
struct | ctrump_pdg_incremental_expr |
| インクリメント演算 More...
|
struct | ctrump_pdg_store_expr |
| 通常のストア More...
|
struct | ctrump_pdg_node |
| PDGノード. More...
|
Defines |
#define | CTRUMP_MEMORY_ACCESS_PTRREF (1<<0) |
#define | CTRUMP_MEMORY_ACCESS_PARTIAL (1<<1) |
Enumerations |
enum | ctrump_subscript_nd_code {
CTRUMP_SUBSCRIPT_TERMINAL,
CTRUMP_SUBSCRIPT_LOAD_RECORD,
CTRUMP_SUBSCRIPT_COEF_ARRAY,
CTRUMP_SUBSCRIPT_RECORD_MEMBER,
CTRUMP_SUBSCRIPT_RECORD_MEMBER_TERMINAL
} |
enum | ctrump_load_store_t { CTRUMP_MEMORY_LOAD,
CTRUMP_MEMORY_STORE
} |
enum | ctrump_pdg_node_code {
CTRUMP_PDG_VALUE_EXPR,
CTRUMP_PDG_VALUE_REDUCTION,
CTRUMP_PDG_VALUE_INCREMENTAL,
CTRUMP_PDG_VALUE_PHI,
CTRUMP_PDG_VALUE_INITIALIZER,
CTRUMP_PDG_VALUE_UNINITIALIZED,
CTRUMP_PDG_VALUE_GLOBAL,
CTRUMP_PDG_VALUE_ARG
} |
| PDGノードの種類. More...
|
enum | ctrump_reductive_expr_code {
CTRUMP_REDUCTIVE_IDENTIFY,
CTRUMP_REDUCTIVE_ADD,
CTRUMP_REDUCTIVE_SUB,
CTRUMP_REDUCTIVE_MUL,
CTRUMP_REDUCTIVE_BOR,
CTRUMP_REDUCTIVE_BAND,
CTRUMP_REDUCTIVE_BXOR,
CTRUMP_REDUCTIVE_LOR,
CTRUMP_REDUCTIVE_LAND,
CTRUMP_REDUCTIVE_FADD,
CTRUMP_REDUCTIVE_FSUB,
CTRUMP_REDUCTIVE_FMUL
} |
| 縮約演算の種類 More...
|
enum | ctrump_incremental_expr_code { CTRUMP_PDG_INC,
CTRUMP_PDG_DEC,
CTRUMP_PDG_FINC,
CTRUMP_PDG_FDEC
} |
| インクリメント演算の種類 More...
|
Detailed Description
変数アクセス
Definition in file var.h.
Define Documentation
#define CTRUMP_MEMORY_ACCESS_PARTIAL (1<<1) |
#define CTRUMP_MEMORY_ACCESS_PTRREF (1<<0) |
Enumeration Type Documentation
インクリメント演算の種類
- Enumerator:
-
CTRUMP_PDG_INC |
x++ |
CTRUMP_PDG_DEC |
x-- |
CTRUMP_PDG_FINC |
x++ |
CTRUMP_PDG_FDEC |
x-- |
Definition at line 319 of file var.h.
- Enumerator:
-
CTRUMP_MEMORY_LOAD |
|
CTRUMP_MEMORY_STORE |
|
Definition at line 214 of file var.h.
PDGノードの種類.
- Enumerator:
-
CTRUMP_PDG_VALUE_EXPR |
普通の式 : i = f(x) |
CTRUMP_PDG_VALUE_REDUCTION |
普通の式 : i = i op x (op should be associative) |
CTRUMP_PDG_VALUE_INCREMENTAL |
インクリメント :/ i++ |
CTRUMP_PDG_VALUE_PHI |
φノード : i = phi(i0,i1,i2) |
CTRUMP_PDG_VALUE_INITIALIZER |
初期化子 int i = f(x) |
CTRUMP_PDG_VALUE_UNINITIALIZED |
未初期値 i = ?? |
CTRUMP_PDG_VALUE_GLOBAL |
グローバル変数値 |
CTRUMP_PDG_VALUE_ARG |
関数引数値 |
Definition at line 261 of file var.h.
縮約演算の種類
- Enumerator:
-
CTRUMP_REDUCTIVE_IDENTIFY |
x = x |
CTRUMP_REDUCTIVE_ADD |
x = x+c |
CTRUMP_REDUCTIVE_SUB |
x = x-c |
CTRUMP_REDUCTIVE_MUL |
x = x*mul |
CTRUMP_REDUCTIVE_BOR |
x = x|c |
CTRUMP_REDUCTIVE_BAND |
x = x&c |
CTRUMP_REDUCTIVE_BXOR |
x = x^c |
CTRUMP_REDUCTIVE_LOR |
x = x||c |
CTRUMP_REDUCTIVE_LAND |
x = x&&c |
CTRUMP_REDUCTIVE_FADD |
x = x+c |
CTRUMP_REDUCTIVE_FSUB |
x = x-c |
CTRUMP_REDUCTIVE_FMUL |
x = x*c |
Definition at line 286 of file var.h.
配列添字の種類
- Enumerator:
-
CTRUMP_SUBSCRIPT_TERMINAL |
終端 |
CTRUMP_SUBSCRIPT_LOAD_RECORD |
構造体の読み出し |
CTRUMP_SUBSCRIPT_COEF_ARRAY |
配列アクセス |
CTRUMP_SUBSCRIPT_RECORD_MEMBER |
構造体メンバ |
CTRUMP_SUBSCRIPT_RECORD_MEMBER_TERMINAL |
構造体メンバ |
Definition at line 47 of file var.h.