Lines Matching refs:IRExpr
1264 IRExpr; typedef
1321 IRExpr* ix; /* Variable part of index into array */
1338 IRExpr* arg1; /* operand 1 */
1339 IRExpr* arg2; /* operand 2 */
1340 IRExpr* arg3; /* operand 3 */
1341 IRExpr* arg4; /* operand 4 */
1350 IRExpr* arg1; /* operand 1 */
1351 IRExpr* arg2; /* operand 2 */
1352 IRExpr* arg3; /* operand 3 */
1360 IRExpr* arg1; /* operand 1 */
1361 IRExpr* arg2; /* operand 2 */
1369 IRExpr* arg; /* operand */
1381 IRExpr* addr; /* Address being loaded from */
1433 IRExpr** args; /* Vector of argument expressions. */
1444 IRExpr* cond; /* Condition */
1445 IRExpr* expr0; /* True expression */
1446 IRExpr* exprX; /* False expression */
1452 extern IRExpr* IRExpr_Binder ( Int binder );
1453 extern IRExpr* IRExpr_Get ( Int off, IRType ty );
1454 extern IRExpr* IRExpr_GetI ( IRRegArray* descr, IRExpr* ix, Int bias );
1455 extern IRExpr* IRExpr_RdTmp ( IRTemp tmp );
1456 extern IRExpr* IRExpr_Qop ( IROp op, IRExpr* arg1, IRExpr* arg2,
1457 IRExpr* arg3, IRExpr* arg4 );
1458 extern IRExpr* IRExpr_Triop ( IROp op, IRExpr* arg1,
1459 IRExpr* arg2, IRExpr* arg3 );
1460 extern IRExpr* IRExpr_Binop ( IROp op, IRExpr* arg1, IRExpr* arg2 );
1461 extern IRExpr* IRExpr_Unop ( IROp op, IRExpr* arg );
1462 extern IRExpr* IRExpr_Load ( IREndness end, IRType ty, IRExpr* addr );
1463 extern IRExpr* IRExpr_Const ( IRConst* con );
1464 extern IRExpr* IRExpr_CCall ( IRCallee* cee, IRType retty, IRExpr** args );
1465 extern IRExpr* IRExpr_Mux0X ( IRExpr* cond, IRExpr* expr0, IRExpr* exprX );
1468 extern IRExpr* deepCopyIRExpr ( IRExpr* );
1471 extern void ppIRExpr ( IRExpr* );
1475 extern IRExpr** mkIRExprVec_0 ( void );
1476 extern IRExpr** mkIRExprVec_1 ( IRExpr* );
1477 extern IRExpr** mkIRExprVec_2 ( IRExpr*, IRExpr* );
1478 extern IRExpr** mkIRExprVec_3 ( IRExpr*, IRExpr*, IRExpr* );
1479 extern IRExpr** mkIRExprVec_4 ( IRExpr*, IRExpr*, IRExpr*, IRExpr* );
1480 extern IRExpr** mkIRExprVec_5 ( IRExpr*, IRExpr*, IRExpr*, IRExpr*,
1481 IRExpr* );
1482 extern IRExpr** mkIRExprVec_6 ( IRExpr*, IRExpr*, IRExpr*, IRExpr*,
1483 IRExpr*, IRExpr* );
1484 extern IRExpr** mkIRExprVec_7 ( IRExpr*, IRExpr*, IRExpr*, IRExpr*,
1485 IRExpr*, IRExpr*, IRExpr* );
1486 extern IRExpr** mkIRExprVec_8 ( IRExpr*, IRExpr*, IRExpr*, IRExpr*,
1487 IRExpr*, IRExpr*, IRExpr*, IRExpr*);
1493 extern IRExpr** shallowCopyIRExprVec ( IRExpr** );
1494 extern IRExpr** deepCopyIRExprVec ( IRExpr** );
1498 extern IRExpr* mkIRExpr_HWord ( HWord );
1502 IRExpr* mkIRExprCCall ( IRType retty,
1504 IRExpr** args );
1509 static inline Bool isIRAtom ( IRExpr* e ) { in isIRAtom()
1515 extern Bool eqIRAtom ( IRExpr*, IRExpr* );
1640 IRExpr* guard; /* :: Ity_Bit. Controls whether call happens */
1641 IRExpr** args; /* arg list, ends in NULL */
1646 IRExpr* mAddr; /* of access, or NULL if mFx==Ifx_None */
1677 IRExpr** args );
1684 IRExpr** args );
1768 IRExpr* addr; /* store address */
1769 IRExpr* expdHi; /* expected old value at *addr */
1770 IRExpr* expdLo;
1771 IRExpr* dataHi; /* new value for *addr */
1772 IRExpr* dataLo;
1779 IREndness end, IRExpr* addr,
1780 IRExpr* expdHi, IRExpr* expdLo,
1781 IRExpr* dataHi, IRExpr* dataLo );
1864 IRExpr* base; /* Start of undefined chunk */
1866 IRExpr* nia; /* Address of next (guest) insn */
1874 IRExpr* data; /* The value to write */
1886 IRExpr* ix; /* Variable part of index into array */
1888 IRExpr* data; /* The value to write */
1900 IRExpr* data; /* Expression (RHS of assignment) */
1910 IRExpr* addr; /* store address */
1911 IRExpr* data; /* value to write */
1979 IRExpr* addr;
1980 IRExpr* storedata; /* NULL => LL, non-NULL => SC */
2013 IRExpr* guard; /* Conditional expression */
2024 extern IRStmt* IRStmt_AbiHint ( IRExpr* base, Int len, IRExpr* nia );
2025 extern IRStmt* IRStmt_Put ( Int off, IRExpr* data );
2026 extern IRStmt* IRStmt_PutI ( IRRegArray* descr, IRExpr* ix, Int bias,
2027 IRExpr* data );
2028 extern IRStmt* IRStmt_WrTmp ( IRTemp tmp, IRExpr* data );
2029 extern IRStmt* IRStmt_Store ( IREndness end, IRExpr* addr, IRExpr* data );
2032 IRExpr* addr, IRExpr* storedata );
2035 extern IRStmt* IRStmt_Exit ( IRExpr* guard, IRJumpKind jk, IRConst* dst );
2089 IRExpr* next;
2121 extern IRType typeOfIRExpr ( IRTypeEnv*, IRExpr* );