X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=src%2Fvm%2Fjit%2Fx86_64%2Femit.h;h=ebf6e361f6a9d03eb85cf8af09436cacefc27c91;hb=d1377204f560df4d6656f58914bc4d242193c5e0;hp=4a1cb4c9884a8998b53b94a92ec8c6321a13abee;hpb=219e4a46e3d127d3c0883ee2e8635b4fe3c94d60;p=cacao.git diff --git a/src/vm/jit/x86_64/emit.h b/src/vm/jit/x86_64/emit.h index 4a1cb4c98..ebf6e361f 100644 --- a/src/vm/jit/x86_64/emit.h +++ b/src/vm/jit/x86_64/emit.h @@ -1,9 +1,7 @@ /* src/vm/jit/x86_64/emit.h - machine dependent emit function prototypes - Copyright (C) 1996-2005, 2006, 2007 R. Grafl, A. Krall, C. Kruegel, - C. Oates, R. Obermaisser, M. Platter, M. Probst, S. Ring, - E. Steiner, C. Thalinger, D. Thuernbeck, P. Tomsich, C. Ullrich, - J. Wenninger, Institut f. Computersprachen - TU Wien + Copyright (C) 1996-2005, 2006, 2007, 2008, 2009 + CACAOVM - Verein zur Foerderung der freien virtuellen Maschine CACAO This file is part of CACAO. @@ -180,6 +178,10 @@ typedef union { /* function prototypes ********************************************************/ +#ifdef __cplusplus +extern "C" { +#endif + void emit_cmovxx(codegendata *cd, instruction *iptr, s4 s, s4 d); @@ -191,6 +193,7 @@ void emit_lshift(jitdata *jd, s4 shift_op, instruction *iptr); /* integer instructions */ +void emit_nop(codegendata *cd, int length); void emit_mov_reg_reg(codegendata *cd, s8 reg, s8 dreg); void emit_mov_imm_reg(codegendata *cd, s8 imm, s8 reg); void emit_movl_reg_reg(codegendata *cd, s8 reg, s8 dreg); @@ -362,6 +365,19 @@ void emit_xorpd_membase_reg(codegendata *cd, s8 basereg, s8 disp, s8 dreg); /* system instructions ********************************************************/ void emit_rdtsc(codegendata *cd); +void emit_mfence(codegendata *cd); + + +/** + * Emit code to recompute the procedure vector. This is a nop, + * because we do not use a procedure vector. + */ +static inline void emit_recompute_pv(codegendata* cd) {} + + +#ifdef __cplusplus +} +#endif #endif /* _MD_EMIT_H */ @@ -377,4 +393,5 @@ void emit_rdtsc(codegendata *cd); * c-basic-offset: 4 * tab-width: 4 * End: + * vim:noexpandtab:sw=4:ts=4: */