qemu-e2k/target-i386
Richard Henderson 2bece2c883 tcg: Optionally sign-extend 32-bit arguments for 64-bit hosts.
Some hosts (amd64, ia64) have an ABI that ignores the high bits
of the 64-bit register when passing 32-bit arguments.  Others
require the value to be properly sign-extended for the type.
I.e. "int32_t" must be sign-extended and "uint32_t" must be
zero-extended to 64-bits.

To effect this, extend the "sizemask" parameter to tcg_gen_callN
to include the signedness of the type of each parameter.  If the
tcg target requires it, extend each 32-bit argument into a 64-bit
temp and pass that to the function call.

This ABI feature is required by sparc64, ppc64 and s390x.

Signed-off-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2010-06-16 11:29:11 +02:00
..
TODO Unbreak large mem support by removing kqemu 2009-08-24 08:02:55 -05:00
cpu.h x86/cpuid: move CPUID functions into separate file 2010-03-13 16:50:54 +01:00
cpuid.c resent: x86/cpuid: Add kvm32 CPU model 2010-06-01 12:53:09 -05:00
exec.h target-i386: fix crash on x86 32bit linux host with hw breakpoint exceptions 2010-02-28 19:20:02 +01:00
helper.c target-i386: print EFER in cpu_dump_state 2010-04-26 11:28:35 -03:00
helper.h target-i386: implement lzcnt emulation 2009-10-23 17:10:36 +02:00
helper_template.h Update to a hopefully more future proof FSF address 2009-07-16 20:47:01 +00:00
kvm.c kvm: fix 80000001.EDX supported bit filtering 2010-05-11 17:07:36 -03:00
machine.c KVM: Rework VCPU state writeback API 2010-03-04 00:29:28 -03:00
op_helper.c target-i386: Fix variable in (disabled) debugging code 2010-04-08 21:44:40 +02:00
ops_sse.h target-i386: add SSE4a instruction support 2009-10-04 14:09:41 +02:00
ops_sse_header.h tcg: Optionally sign-extend 32-bit arguments for 64-bit hosts. 2010-06-16 11:29:11 +02:00
svm.h reworked SVM interrupt handling logic - fixed vmrun EIP saved value - reworked cr8 handling - added CPUState.hflags2 2008-06-04 17:02:19 +00:00
translate.c target-i386: fix decoding of negative 4-byte displacements 2010-06-04 19:48:53 +00:00