X-Git-Url: http://git.maemo.org/git/?a=blobdiff_plain;f=tcg%2Ftcg.h;h=35e6aeb6f55b6a49b18d71d221fe8fbd1576fb78;hb=refs%2Fheads%2Flinux-user-for-upstream;hp=1ffeca6e6f962174bfe71aebb5bf0a6e2ab5dc47;hpb=43e860ef0989ac152854ad5775295e86656bdf4e;p=qemu diff --git a/tcg/tcg.h b/tcg/tcg.h index 1ffeca6..35e6aeb 100644 --- a/tcg/tcg.h +++ b/tcg/tcg.h @@ -21,6 +21,7 @@ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN * THE SOFTWARE. */ +#include "qemu-common.h" #include "tcg-target.h" #if TCG_TARGET_REG_BITS == 32 @@ -120,7 +121,9 @@ typedef tcg_target_ulong TCGArg; are aliases for target_ulong and host pointer sized values respectively. */ -//#define DEBUG_TCGV 1 +#ifdef CONFIG_DEBUG_TCG +#define DEBUG_TCGV 1 +#endif #ifdef DEBUG_TCGV @@ -174,10 +177,14 @@ typedef int TCGv_i64; #define TCG_CALL_TYPE_REGPARM_1 0x0001 /* i386 style regparm call (1 reg) */ #define TCG_CALL_TYPE_REGPARM_2 0x0002 /* i386 style regparm call (2 regs) */ #define TCG_CALL_TYPE_REGPARM 0x0003 /* i386 style regparm call (3 regs) */ -/* A pure function only reads its arguments and globals variables and - cannot raise exceptions. Hence a call to a pure function can be +/* A pure function only reads its arguments and TCG global variables + and cannot raise exceptions. Hence a call to a pure function can be safely suppressed if the return value is not used. */ #define TCG_CALL_PURE 0x0010 +/* A const function only reads its arguments and does not use TCG + global variables. Hence a call to such a function does not + save TCG global variables back to their canonical location. */ +#define TCG_CALL_CONST 0x0020 /* used to align parameters */ #define TCG_CALL_DUMMY_TCGV MAKE_TCGV_I32(-1)