Lines Matching refs:IRAtom

603 typedef  IRExpr  IRAtom;
607 static Bool isOriginalAtom ( MCEnv* mce, IRAtom* a1 )
618 static Bool isShadowAtom ( MCEnv* mce, IRAtom* a1 )
629 static Bool sameKindedAtoms ( IRAtom* a1, IRAtom* a2 )
704 static IRAtom* assignNew ( MCEnv* mce, IRType ty, IRExpr* e ) {
717 static IRAtom* mkDifD8 ( MCEnv* mce, IRAtom* a1, IRAtom* a2 ) {
723 static IRAtom* mkDifD16 ( MCEnv* mce, IRAtom* a1, IRAtom* a2 ) {
729 static IRAtom* mkDifD32 ( MCEnv* mce, IRAtom* a1, IRAtom* a2 ) {
735 static IRAtom* mkDifD64 ( MCEnv* mce, IRAtom* a1, IRAtom* a2 ) {
741 static IRAtom* mkDifDV128 ( MCEnv* mce, IRAtom* a1, IRAtom* a2 ) {
749 static IRAtom* mkUifU8 ( MCEnv* mce, IRAtom* a1, IRAtom* a2 ) {
755 static IRAtom* mkUifU16 ( MCEnv* mce, IRAtom* a1, IRAtom* a2 ) {
761 static IRAtom* mkUifU32 ( MCEnv* mce, IRAtom* a1, IRAtom* a2 ) {
767 static IRAtom* mkUifU64 ( MCEnv* mce, IRAtom* a1, IRAtom* a2 ) {
773 static IRAtom* mkUifUV128 ( MCEnv* mce, IRAtom* a1, IRAtom* a2 ) {
779 static IRAtom* mkUifU ( MCEnv* mce, IRType vty, IRAtom* a1, IRAtom* a2 ) {
794 static IRAtom* mkLeft8 ( MCEnv* mce, IRAtom* a1 ) {
804 static IRAtom* mkLeft16 ( MCEnv* mce, IRAtom* a1 ) {
814 static IRAtom* mkLeft32 ( MCEnv* mce, IRAtom* a1 ) {
829 static IRAtom* mkImproveAND8 ( MCEnv* mce, IRAtom* data, IRAtom* vbits )
837 static IRAtom* mkImproveAND16 ( MCEnv* mce, IRAtom* data, IRAtom* vbits )
845 static IRAtom* mkImproveAND32 ( MCEnv* mce, IRAtom* data, IRAtom* vbits )
853 static IRAtom* mkImproveAND64 ( MCEnv* mce, IRAtom* data, IRAtom* vbits )
861 static IRAtom* mkImproveANDV128 ( MCEnv* mce, IRAtom* data, IRAtom* vbits )
872 static IRAtom* mkImproveOR8 ( MCEnv* mce, IRAtom* data, IRAtom* vbits )
884 static IRAtom* mkImproveOR16 ( MCEnv* mce, IRAtom* data, IRAtom* vbits )
896 static IRAtom* mkImproveOR32 ( MCEnv* mce, IRAtom* data, IRAtom* vbits )
908 static IRAtom* mkImproveOR64 ( MCEnv* mce, IRAtom* data, IRAtom* vbits )
920 static IRAtom* mkImproveORV128 ( MCEnv* mce, IRAtom* data, IRAtom* vbits )
934 static IRAtom* mkPCastTo( MCEnv* mce, IRType dst_ty, IRAtom* vbits )
937 IRAtom* tmp1;
1016 static void complainIfUndefined ( MCEnv* mce, IRAtom* atom )
1018 IRAtom* vatom;
1022 IRAtom* cond;
1131 IRAtom* atom, IRAtom* vatom )
1161 IRRegArray* descr, IRAtom* ix, Int bias, IRAtom* atom )
1163 IRAtom* vatom;
1214 IRExpr* shadow_GETI ( MCEnv* mce, IRRegArray* descr, IRAtom* ix, Int bias )
1245 IRAtom* mkLazy2 ( MCEnv* mce, IRType finalVty, IRAtom* va1, IRAtom* va2 )
1248 IRAtom* at;
1264 IRAtom* mkLazyN ( MCEnv* mce,
1265 IRAtom** exprvec, IRType finalVtype, IRCallee* cee )
1268 IRAtom* here;
1269 IRAtom* curr = definedOfType(Ity_I32);
1297 IRAtom* expensiveAdd32 ( MCEnv* mce, IRAtom* qaa, IRAtom* qbb,
1298 IRAtom* aa, IRAtom* bb )
1300 IRAtom *a_min, *b_min, *a_max, *b_max;
1355 static IRAtom* mkPCast8x16 ( MCEnv* mce, IRAtom* at )
1360 static IRAtom* mkPCast16x8 ( MCEnv* mce, IRAtom* at )
1365 static IRAtom* mkPCast32x4 ( MCEnv* mce, IRAtom* at )
1370 static IRAtom* mkPCast64x2 ( MCEnv* mce, IRAtom* at )
1413 IRAtom* binary32Fx4 ( MCEnv* mce, IRAtom* vatomX, IRAtom* vatomY )
1415 IRAtom* at;
1424 IRAtom* unary32Fx4 ( MCEnv* mce, IRAtom* vatomX )
1426 IRAtom* at;
1433 IRAtom* binary32F0x4 ( MCEnv* mce, IRAtom* vatomX, IRAtom* vatomY )
1435 IRAtom* at;
1446 IRAtom* unary32F0x4 ( MCEnv* mce, IRAtom* vatomX )
1448 IRAtom* at;
1459 IRAtom* binary64Fx2 ( MCEnv* mce, IRAtom* vatomX, IRAtom* vatomY )
1461 IRAtom* at;
1470 IRAtom* unary64Fx2 ( MCEnv* mce, IRAtom* vatomX )
1472 IRAtom* at;
1479 IRAtom* binary64F0x2 ( MCEnv* mce, IRAtom* vatomX, IRAtom* vatomY )
1481 IRAtom* at;
1492 IRAtom* unary64F0x2 ( MCEnv* mce, IRAtom* vatomX )
1494 IRAtom* at;
1531 IRAtom* vectorNarrowV128 ( MCEnv* mce, IROp narrow_op,
1532 IRAtom* vatom1, IRAtom* vatom2)
1534 IRAtom *at1, *at2, *at3;
1535 IRAtom* (*pcast)( MCEnv*, IRAtom* );
1555 IRAtom* binary8Ix16 ( MCEnv* mce, IRAtom* vatom1, IRAtom* vatom2 )
1557 IRAtom* at;
1564 IRAtom* binary16Ix8 ( MCEnv* mce, IRAtom* vatom1, IRAtom* vatom2 )
1566 IRAtom* at;
1573 IRAtom* binary32Ix4 ( MCEnv* mce, IRAtom* vatom1, IRAtom* vatom2 )
1575 IRAtom* at;
1582 IRAtom* binary64Ix2 ( MCEnv* mce, IRAtom* vatom1, IRAtom* vatom2 )
1584 IRAtom* at;
1596 IRAtom* expr2vbits_Binop ( MCEnv* mce,
1598 IRAtom* atom1, IRAtom* atom2 )
1601 IRAtom* (*uifu) (MCEnv*, IRAtom*, IRAtom*);
1602 IRAtom* (*difd) (MCEnv*, IRAtom*, IRAtom*);
1603 IRAtom* (*improve) (MCEnv*, IRAtom*, IRAtom*);
1605 IRAtom* vatom1 = expr2vbits( mce, atom1 );
1606 IRAtom* vatom2 = expr2vbits( mce, atom2 );
1789 IRAtom* vLo32 = mkLeft32(mce, mkUifU32(mce, vatom1,vatom2));
1790 IRAtom* vHi32 = mkPCastTo(mce, Ity_I32, vLo32);
1796 IRAtom* vLo16 = mkLeft16(mce, mkUifU16(mce, vatom1,vatom2));
1797 IRAtom* vHi16 = mkPCastTo(mce, Ity_I16, vLo16);
1803 IRAtom* vLo8 = mkLeft8(mce, mkUifU8(mce, vatom1,vatom2));
1804 IRAtom* vHi8 = mkPCastTo(mce, Ity_I8, vLo8);
1917 IRExpr* expr2vbits_Unop ( MCEnv* mce, IROp op, IRAtom* atom )
1919 IRAtom* vatom = expr2vbits( mce, atom );
2007 IRAtom* expr2vbits_LDle_WRK ( MCEnv* mce, IRType ty, IRAtom* addr, UInt bias )
2013 IRAtom* addrAct;
2046 IRAtom* eBias;
2068 IRAtom* expr2vbits_LDle ( MCEnv* mce, IRType ty, IRAtom* addr, UInt bias )
2070 IRAtom *v64hi, *v64lo;
2090 IRAtom* expr2vbits_Mux0X ( MCEnv* mce,
2091 IRAtom* cond, IRAtom* expr0, IRAtom* exprX )
2093 IRAtom *vbitsC, *vbits0, *vbitsX;
2172 IRExpr* zwidenToHostWord ( MCEnv* mce, IRAtom* vatom )
2204 IRAtom* addr, UInt bias,
2205 IRAtom* data, IRAtom* vdata )
2210 IRAtom *addrAct, *addrLo64, *addrHi64;
2211 IRAtom *vdataLo64, *vdataHi64;
2212 IRAtom *eBias, *eBias0, *eBias8;
2335 IRAtom *src, *here, *curr;
2502 static Bool isBogusAtom ( IRAtom* at )