On 09/29/2011 09:52 AM, Jan Kiszka wrote: > x86 cannot provide an optimized generic deposit implementation. But at > least for a few special cases, namely for writing bits 0..7, 8..15, and > 0..15, versions using only a single instruction are feasible. > Introducing such limited support improves emulating 16-bit x86 code on > x86, but also rarer cases where 32-bit or 64-bit code accesses bytes or > words. > > Signed-off-by: Jan Kiszka <jan.kis...@siemens.com> > --- > > Changes in v4: > - provide correct default TCG_TARGET_deposit_i32_valid > > Changes in v3: > - provide default TCG_TARGET_deposit_i32_valid - just in case > > Changes in v2: > - introduce restricting predicates TCG_TARGET_deposit_i32/64_valid > to decide if deposit support can be used > - express register constraints via new 'Q' symbol > > tcg/i386/tcg-target.c | 24 ++++++++++++++++++++++++ > tcg/i386/tcg-target.h | 9 +++++++-- > tcg/tcg-op.h | 4 ++-- > tcg/tcg.h | 7 +++++++ > 4 files changed, 40 insertions(+), 4 deletions(-)
Reviewed-by: Richard Henderson <r...@twiddle.net> r~