- 29 6月, 2012 1 次提交
-
-
由 Blue Swirl 提交于
Fix coding style and a few typos. Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
-
- 22 6月, 2012 1 次提交
-
-
由 Blue Swirl 提交于
Use LOG_UNIMP for some target CPU cases. Signed-off-by: NBlue Swirl <blauwirbel@gmail.com> Acked-by: NAlexander Graf <agraf@suse.de>
-
- 14 4月, 2012 1 次提交
-
-
由 Blue Swirl 提交于
Use uintptr_t instead of void * or unsigned long in several op related functions, env->mem_io_pc and GETPC() macro. Reviewed-by: NStefan Weil <sw@weilnetz.de> Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
-
- 15 3月, 2012 1 次提交
-
-
由 Andreas Färber 提交于
Scripted conversion: sed -i "s/CPUState/CPUX86State/g" target-i386/*.[hc] sed -i "s/#define CPUX86State/#define CPUState/" target-i386/cpu.h Signed-off-by: NAndreas Färber <afaerber@suse.de> Acked-by: NAnthony Liguori <aliguori@us.ibm.com>
-
- 29 2月, 2012 1 次提交
-
-
由 Stefan Weil 提交于
Remove some include statements which are not needed. Signed-off-by: NStefan Weil <sw@weilnetz.de>
-
- 11 1月, 2012 1 次提交
-
-
由 Aurelien Jarno 提交于
SSE rounding and flush to zero control has never been implemented. However given that softfloat-native was using a single state for FPU and SSE and given that glibc is setting both FPU and SSE state in fesetround(), this was working correctly up to the switch to softfloat. Fix that by adding an update_sse_status() function similar to update_fpu_status(), and callin git on write to mxcsr. Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
- 25 10月, 2011 1 次提交
-
-
由 Avi Kivity 提交于
It's needed for its default value - bit 0 specifies that "rep movs" is good enough for memcpy, and Linux may use a slower memcpu if it is not set, depending on cpu family/model. Signed-off-by: NAvi Kivity <avi@redhat.com> Signed-off-by: NMarcelo Tosatti <mtosatti@redhat.com>
-
- 01 10月, 2011 1 次提交
-
-
由 Blue Swirl 提交于
Pass CPUState pointer to tlb_fill() instead of architecture local cpu_single_env hacks. Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
-
- 02 9月, 2011 1 次提交
-
-
由 Boris Figovsky 提交于
The second if statement should consider the original al register value, and not the new one. Signed-off-by: NBoris Figovsky <boris.figovksy@ravellosystems.com> Reviewed-by: NPeter Maydell <peter.maydell@linaro.org> Signed-off-by: NStefan Hajnoczi <stefanha@linux.vnet.ibm.com>
-
- 07 8月, 2011 1 次提交
-
-
由 Blue Swirl 提交于
Parameter is_softmmu (and its evil mutant twin brother is_softmuu) is not used in cpu_*_handle_mmu_fault() functions, remove them and adjust callers. Acked-by: NRichard Henderson <rth@twiddle.net> Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
-
- 30 7月, 2011 1 次提交
-
-
由 Blue Swirl 提交于
Move softmmu_exec.h include directives from target-*/exec.h to target-*/op_helper.c. Move also various other stuff only used in op_helper.c there. Define global env in dyngen-exec.h. For i386, move wrappers for segment and FPU helpers from user-exec.c to op_helper.c. Implement raise_exception_err_env() to handle dynamic CPUState. Move the function declarations to cpu.h since they can be used outside of op_helper.c context. LM32, s390x, UniCore32: remove unused cpu_halted(), regs_to_env() and env_to_regs(). ARM: make raise_exception() static. Convert #include "exec.h" to #include "cpu.h" #include "dyngen-exec.h" and remove now unused target-*/exec.h. Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
-
- 27 6月, 2011 3 次提交
-
-
由 Blue Swirl 提交于
Most exec-all.h include directives are now useless, remove them. Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
-
由 Blue Swirl 提交于
Several x86 specific functions are called from cpu-exec.c with the assumption that global env register is valid. This will be changed later, so make the functions use caller supplied CPUState parameter. It would be cleaner to move the functions to helper.c, but there are quite a lot of dependencies between do_interrupt() and other functions. Add helpers for svm_check_intercept() and cpu_cc_compute_all() instead of calling the helper (which uses global env, AREG0) directly. Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
-
由 Blue Swirl 提交于
Make cpu_loop_exit() take a parameter for CPUState instead of relying on global env. Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
-
- 03 6月, 2011 2 次提交
-
-
由 Aurelien Jarno 提交于
Instead of using a table which doesn't correspond to anything from physical in the CPU, use directly the constants in helper_fld*_ST0(). Cc: Andreas Färber <andreas.faerber@web.de> Reviewed-by: NPeter Maydell <peter.maydell@linaro.org> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
由 Aurelien Jarno 提交于
Now that target-i386 uses softfloat, floatx80 is always available and there is no need anymore to have code handling both float64 and floax80. Reviewed-by: NPeter Maydell <peter.maydell@linaro.org> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
- 25 4月, 2011 10 次提交
-
-
由 Aurelien Jarno 提交于
Reviewed-by: NPeter Maydell <peter.maydell@linaro.org> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
由 Aurelien Jarno 提交于
Reviewed-by: NPeter Maydell <peter.maydell@linaro.org> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
由 Aurelien Jarno 提交于
Use the new CPU86_LDouble <-> double conversion functions to make logarithmic and trigonometric helpers working with softfloat. Reviewed-by: NPeter Maydell <peter.maydell@linaro.org> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
由 Aurelien Jarno 提交于
Add functions to convert CPU86_LDouble to double and vice versa. They are going to be used to implement logarithmic and trigonometric function until softfloat implement them. Reviewed-by: NPeter Maydell <peter.maydell@linaro.org> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
由 Aurelien Jarno 提交于
Reviewed-by: NPeter Maydell <peter.maydell@linaro.org> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
由 Aurelien Jarno 提交于
Reviewed-by: NPeter Maydell <peter.maydell@linaro.org> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
由 Aurelien Jarno 提交于
Reviewed-by: NPeter Maydell <peter.maydell@linaro.org> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
由 Aurelien Jarno 提交于
With softfloat it's not possible to play with the overflow of an unsigned value to get the 0 case partially correct. Use a special case for that. Using a division to generate an infinity is the easiest way that works for both softfloat and softfloat-native. Reviewed-by: NPeter Maydell <peter.maydell@linaro.org> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
由 Aurelien Jarno 提交于
Reviewed-by: NPeter Maydell <peter.maydell@linaro.org> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
由 Aurelien Jarno 提交于
Use the scalbn softfloat function to implement helper_fscale(). This fixes corner cases (e.g. NaN) and makes a few more GNU libc math tests to pass. Reviewed-by: NPeter Maydell <peter.maydell@linaro.org> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
- 20 4月, 2011 1 次提交
-
-
由 Stefan Weil 提交于
The previous patch removed the need for parameter puc. Is is now unused, so remove it. Cc: Aurelien Jarno <aurelien@aurel32.net> Reviewed-by: NPeter Maydell <peter.maydell@linaro.org> Signed-off-by: NStefan Weil <weil@mail.berlios.de>
-
- 18 4月, 2011 1 次提交
-
-
由 Aurelien Jarno 提交于
Add floatx_{add,mul,sub} defines, and use them instead of using direct C operations. Reviewed-by: NPeter Maydell <peter.maydell@linaro.org> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
- 14 10月, 2010 1 次提交
-
-
由 Blue Swirl 提交于
Compiling with GCC 4.6.0 20100925 produced warnings: /src/qemu/target-i386/op_helper.c: In function 'switch_tss': /src/qemu/target-i386/op_helper.c:283:53: error: variable 'new_trap' set but not used [-Werror=unused-but-set-variable] Fix by adding a dummy cast so that the variable is not unused. Add also pointer to docs. Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
-
- 23 8月, 2010 1 次提交
-
-
由 Adam Lackorzynski 提交于
Correct the calculation of the offset in the msrpm for the MSR range 0 - 0x1fff. Signed-off-by: NAdam Lackorzynski <adam@os.inf.tu-dresden.de> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
- 03 7月, 2010 1 次提交
-
-
由 Paolo Bonzini 提交于
Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com> Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
-
- 01 7月, 2010 1 次提交
-
-
由 Jan Kiszka 提交于
We currently only clear SVM_EVTINJ_VALID after successful interrupt delivery. This apparently does not match real hardware which clears the whole event_inj field on every vmexit, including unsuccessful interrupt delivery. Reported-by: NErik van der Kouwe <vdkouwe@cs.vu.nl> Signed-off-by: NJan Kiszka <jan.kiszka@siemens.com> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
- 19 6月, 2010 1 次提交
-
-
由 Blue Swirl 提交于
Pass only APICState when accessing APIC from CPU code. Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
-
- 09 4月, 2010 1 次提交
-
-
由 Adam Lackorzynski 提交于
Signed-off-by: NAdam Lackorzynski <adam@os.inf.tu-dresden.de> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
- 01 3月, 2010 2 次提交
-
-
由 Paul Brook 提交于
Only include ioport.h where it is actually needed. Signed-off-by: NPaul Brook <paul@codesourcery.com>
-
由 Jason Wessel 提交于
If you make use of hw breakpoints on a 32bit x86 linux host, qemu will segmentation fault when processing the exception. The problem is that the value of env is stored in $ebp in the op_helper raise_exception() function, and it can have the wrong value when calling it from non generated code. It is possible to work around the problem by restoring the value of env before calling raise_exception() using a new helper function that takes (CPUState *) as one of the arguments. Signed-off-by: NJason Wessel <jason.wessel@windriver.com> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
- 23 10月, 2009 1 次提交
-
-
由 Andre Przywara 提交于
lzcnt is a AMD Phenom/Barcelona added instruction returning the number of leading zero bits in a word. As this is similar to the "bsr" instruction, reuse the existing code. There need to be some more changes, though, as lzcnt always returns a valid value (in opposite to bsr, which has a special case when the operand is 0). lzcnt is guarded by the ABM CPUID bit (Fn8000_0001:ECX_5). Signed-off-by: NAndre Przywara <andre.przywara@amd.com> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
- 05 10月, 2009 1 次提交
-
-
由 Kevin Wolf 提交于
This patch corrects the following aspects of exception generation in fxsave/fxrstor: * Generate #GP if the operand is not aligned to a 16 byte boundary * Generate #UD if the LOCK prefix is used * For CR0.EM = 1 #NM is generated, not #UD Signed-off-by: NKevin Wolf <mail@kevin-wolf.de> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
- 04 10月, 2009 1 次提交
-
-
由 Andre Przywara 提交于
RDTSCP reads the time stamp counter and atomically also the content of a 32-bit MSR, which can be freely set by the OS. This allows CPU local data to be queried by userspace. Linux uses this to allow a fast implementation of the getcpu() syscall, which uses the vsyscall page to avoid a context switch. AMD CPUs since K8RevF and Intel CPUs since Nehalem support this instruction. RDTSCP is guarded by the RDTSCP CPUID bit (Fn8000_0001:EDX[27]). Signed-off-by: NAndre Przywara <andre.przywara@amd.com> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
- 02 10月, 2009 1 次提交
-
-
由 Anthony Liguori 提交于
In the very least, a change like this requires discussion on the list. The naming convention is goofy and it causes a massive merge problem. Something like this _must_ be presented on the list first so people can provide input and cope with it. This reverts commit 99a0949b. Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-