Home | History | Annotate | Download | only in priv

Lines Matching refs:IRExpr

1265 void ppIRExpr ( const IRExpr* e )
1341 IRExpr* arg = e->Iex.CCall.args[i];
1413 IRExpr* arg = d->args[i];
1782 /* Constructors -- IRExpr */
1784 IRExpr* IRExpr_Binder ( Int binder ) {
1785 IRExpr* e = LibVEX_Alloc_inline(sizeof(IRExpr));
1790 IRExpr* IRExpr_Get ( Int off, IRType ty ) {
1791 IRExpr* e = LibVEX_Alloc_inline(sizeof(IRExpr));
1797 IRExpr* IRExpr_GetI ( IRRegArray* descr, IRExpr* ix, Int bias ) {
1798 IRExpr* e = LibVEX_Alloc_inline(sizeof(IRExpr));
1805 IRExpr* IRExpr_RdTmp ( IRTemp tmp ) {
1806 IRExpr* e = LibVEX_Alloc_inline(sizeof(IRExpr));
1811 IRExpr* IRExpr_Qop ( IROp op, IRExpr* arg1, IRExpr* arg2,
1812 IRExpr* arg3, IRExpr* arg4 ) {
1813 IRExpr* e = LibVEX_Alloc_inline(sizeof(IRExpr));
1824 IRExpr* IRExpr_Triop ( IROp op, IRExpr* arg1,
1825 IRExpr* arg2, IRExpr* arg3 ) {
1826 IRExpr* e = LibVEX_Alloc_inline(sizeof(IRExpr));
1836 IRExpr* IRExpr_Binop ( IROp op, IRExpr* arg1, IRExpr* arg2 ) {
1837 IRExpr* e = LibVEX_Alloc_inline(sizeof(IRExpr));
1844 IRExpr* IRExpr_Unop ( IROp op, IRExpr* arg ) {
1845 IRExpr* e = LibVEX_Alloc_inline(sizeof(IRExpr));
1851 IRExpr* IRExpr_Load ( IREndness end, IRType ty, IRExpr* addr ) {
1852 IRExpr* e = LibVEX_Alloc_inline(sizeof(IRExpr));
1860 IRExpr* IRExpr_Const ( IRConst* con ) {
1861 IRExpr* e = LibVEX_Alloc_inline(sizeof(IRExpr));
1866 IRExpr* IRExpr_CCall ( IRCallee* cee, IRType retty, IRExpr** args ) {
1867 IRExpr* e = LibVEX_Alloc_inline(sizeof(IRExpr));
1874 IRExpr* IRExpr_ITE ( IRExpr* cond, IRExpr* iftrue, IRExpr* iffalse ) {
1875 IRExpr* e = LibVEX_Alloc_inline(sizeof(IRExpr));
1882 IRExpr* IRExpr_VECRET ( void ) {
1883 IRExpr* e = LibVEX_Alloc_inline(sizeof(IRExpr));
1887 IRExpr* IRExpr_BBPTR ( void ) {
1888 IRExpr* e = LibVEX_Alloc_inline(sizeof(IRExpr));
1894 /* Constructors for NULL-terminated IRExpr expression vectors,
1897 IRExpr** mkIRExprVec_0 ( void ) {
1898 IRExpr** vec = LibVEX_Alloc_inline(1 * sizeof(IRExpr*));
1902 IRExpr** mkIRExprVec_1 ( IRExpr* arg1 ) {
1903 IRExpr** vec = LibVEX_Alloc_inline(2 * sizeof(IRExpr*));
1908 IRExpr** mkIRExprVec_2 ( IRExpr* arg1, IRExpr* arg2 ) {
1909 IRExpr** vec = LibVEX_Alloc_inline(3 * sizeof(IRExpr*));
1915 IRExpr** mkIRExprVec_3 ( IRExpr* arg1, IRExpr* arg2, IRExpr* arg3 ) {
1916 IRExpr** vec = LibVEX_Alloc_inline(4 * sizeof(IRExpr*));
1923 IRExpr** mkIRExprVec_4 ( IRExpr* arg1, IRExpr* arg2, IRExpr* arg3,
1924 IRExpr* arg4 ) {
1925 IRExpr** vec = LibVEX_Alloc_inline(5 * sizeof(IRExpr*));
1933 IRExpr** mkIRExprVec_5 ( IRExpr* arg1, IRExpr* arg2, IRExpr* arg3,
1934 IRExpr* arg4, IRExpr* arg5 ) {
1935 IRExpr** vec = LibVEX_Alloc_inline(6 * sizeof(IRExpr*));
1944 IRExpr** mkIRExprVec_6 ( IRExpr* arg1, IRExpr* arg2, IRExpr* arg3,
1945 IRExpr* arg4, IRExpr* arg5, IRExpr* arg6 ) {
1946 IRExpr** vec = LibVEX_Alloc_inline(7 * sizeof(IRExpr*));
1956 IRExpr** mkIRExprVec_7 ( IRExpr* arg1, IRExpr* arg2, IRExpr* arg3,
1957 IRExpr* arg4, IRExpr* arg5, IRExpr* arg6,
1958 IRExpr* arg7 ) {
1959 IRExpr** vec = LibVEX_Alloc_inline(8 * sizeof(IRExpr*));
1970 IRExpr** mkIRExprVec_8 ( IRExpr* arg1, IRExpr* arg2, IRExpr* arg3,
1971 IRExpr* arg4, IRExpr* arg5, IRExpr* arg6,
1972 IRExpr* arg7, IRExpr* arg8 ) {
1973 IRExpr** vec = LibVEX_Alloc_inline(9 * sizeof(IRExpr*));
2006 IREndness end, IRExpr* addr,
2007 IRExpr* expdHi, IRExpr* expdLo,
2008 IRExpr* dataHi, IRExpr* dataLo ) {
2024 IRPutI* mkIRPutI ( IRRegArray* descr, IRExpr* ix,
2025 Int bias, IRExpr* data )
2039 IRExpr* addr, IRExpr* data, IRExpr* guard )
2050 IRTemp dst, IRExpr* addr, IRExpr* alt, IRExpr* guard )
2080 IRStmt* IRStmt_AbiHint ( IRExpr* base, Int len, IRExpr* nia ) {
2088 IRStmt* IRStmt_Put ( Int off, IRExpr* data ) {
2101 IRStmt* IRStmt_WrTmp ( IRTemp tmp, IRExpr* data ) {
2108 IRStmt* IRStmt_Store ( IREndness end, IRExpr* addr, IRExpr* data ) {
2117 IRStmt* IRStmt_StoreG ( IREndness end, IRExpr* addr, IRExpr* data,
2118 IRExpr* guard ) {
2126 IRExpr* addr, IRExpr* alt, IRExpr* guard ) {
2139 IRTemp result, IRExpr* addr, IRExpr* storedata ) {
2162 IRStmt* IRStmt_Exit ( IRExpr* guard, IRJumpKind jk, IRConst* dst,
2210 /* Shallow copy of an IRExpr vector */
2212 IRExpr** shallowCopyIRExprVec ( IRExpr** vec )
2215 IRExpr** newvec;
2218 newvec = LibVEX_Alloc_inline((i+1)*sizeof(IRExpr*));
2225 /* Deep copy of an IRExpr vector */
2227 IRExpr** deepCopyIRExprVec ( IRExpr *const * vec )
2230 IRExpr** newvec;
2233 newvec = LibVEX_Alloc_inline((i+1)*sizeof(IRExpr*));
2272 IRExpr* deepCopyIRExpr ( const IRExpr* e )
3539 IRType typeOfIRExpr ( const IRTypeEnv* tyenv, const IRExpr* e )
3614 inline static Bool isAtom ( IRExpr* e ) {
3619 static inline Bool isIRAtom_or_VECRET_or_BBPTR ( const IRExpr* e )
3631 const IRExpr* e;
3746 static inline Int countArgs ( IRExpr** args )
3811 sanityCheckFail(bb,stmt, "out of range Temp in IRExpr");
3813 sanityCheckFail(bb,stmt, "IRTemp use before def in IRExpr");
3818 const IRExpr* expr, Int* def_counts )
3859 const IRExpr* arg = expr->Iex.CCall.args[i];
3941 IRExpr* arg = d->args[i];
3964 void tcExpr ( const IRSB* bb, const IRStmt* stmt, const IRExpr* expr,
3977 sanityCheckFail(bb,stmt,"IRExpr.GetI.ix: not :: Ity_I32");
3979 sanityCheckFail(bb,stmt,"IRExpr.GetI.descr: invalid descr");
4141 IRExpr* arg = expr->Iex.CCall.args[i];
4386 const IRExpr* arg = d->args[i];
4658 IRExpr* mkIRExpr_HWord ( HWord hw )
4669 IRExpr** args )
4680 IRExpr** args )
4690 IRExpr* mkIRExprCCall ( IRType retty,
4692 IRExpr** args )
4698 Bool eqIRAtom ( const IRExpr* a1, const IRExpr* a2 )