sdk/emulator/qemu.git
16 years agoAvoid qemu SIGFPE for MIPS DIV, by Richard Sandiford.
ths [Thu, 29 May 2008 18:29:05 +0000 (18:29 +0000)]
Avoid qemu SIGFPE for MIPS DIV, by Richard Sandiford.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4621 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoFix truncate/extend reversal in MIPS DIV{, U} handling, by Richard Sandiford.
ths [Thu, 29 May 2008 18:28:07 +0000 (18:28 +0000)]
Fix truncate/extend reversal in MIPS DIV{, U} handling, by Richard Sandiford.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4620 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoFix modulus result from MIPS DDIV & avoid overflowing division,
ths [Thu, 29 May 2008 18:23:31 +0000 (18:23 +0000)]
Fix modulus result from MIPS DDIV & avoid overflowing division,
by Richard Sandiford.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4619 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoMicroSparc I didn't have fsmuld op
blueswir1 [Thu, 29 May 2008 18:20:36 +0000 (18:20 +0000)]
MicroSparc I didn't have fsmuld op

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4618 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoRemove unused (for now) reg_REGWPTR (original patch by Glauber Costa)
blueswir1 [Thu, 29 May 2008 16:38:41 +0000 (16:38 +0000)]
Remove unused (for now) reg_REGWPTR (original patch by Glauber Costa)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4617 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoNPTL host detection and futex syscall passthrough.
pbrook [Thu, 29 May 2008 14:34:11 +0000 (14:34 +0000)]
NPTL host detection and futex syscall passthrough.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4616 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoFix rounding error.
pbrook [Thu, 29 May 2008 13:56:10 +0000 (13:56 +0000)]
Fix rounding error.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4615 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoStrace fallback for unknown syscalls.
pbrook [Thu, 29 May 2008 13:49:09 +0000 (13:49 +0000)]
Strace fallback for unknown syscalls.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4614 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoImplement clock_nanosleep.
pbrook [Thu, 29 May 2008 13:43:29 +0000 (13:43 +0000)]
Implement clock_nanosleep.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4613 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoPush common interrupt variables to cpu-defs.h (Glauber Costa)
bellard [Thu, 29 May 2008 10:08:06 +0000 (10:08 +0000)]
Push common interrupt variables to cpu-defs.h (Glauber Costa)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4612 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agokeep static code gen buffer for user mode - mark user mode reserved pages after all...
bellard [Thu, 29 May 2008 09:35:57 +0000 (09:35 +0000)]
keep static code gen buffer for user mode - mark user mode reserved pages after all big allocations

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4611 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoImplement ARM magic kernel page and TLS register.
pbrook [Thu, 29 May 2008 00:20:44 +0000 (00:20 +0000)]
Implement ARM magic kernel page and TLS register.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4610 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agomoved halted field to CPU_COMMON
bellard [Wed, 28 May 2008 17:14:10 +0000 (17:14 +0000)]
moved halted field to CPU_COMMON

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4609 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoDon't link usermode emulation against libqemu_common.a
pbrook [Wed, 28 May 2008 16:44:57 +0000 (16:44 +0000)]
Don't link usermode emulation against libqemu_common.a

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4607 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoforce bit 1 in eflags load
bellard [Wed, 28 May 2008 16:25:20 +0000 (16:25 +0000)]
force bit 1 in eflags load

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4606 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoSVM rework
bellard [Wed, 28 May 2008 16:16:54 +0000 (16:16 +0000)]
SVM rework

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4605 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoHonour current_tc for MIPS M{T,F}{HI,LO}, by Richard Sandiford.
ths [Wed, 28 May 2008 13:37:19 +0000 (13:37 +0000)]
Honour current_tc for MIPS M{T,F}{HI,LO}, by Richard Sandiford.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4604 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoconsistent naming for i386 TCG helper file
bellard [Wed, 28 May 2008 12:51:20 +0000 (12:51 +0000)]
consistent naming for i386 TCG helper file

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4603 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoupdate
bellard [Wed, 28 May 2008 12:35:42 +0000 (12:35 +0000)]
update

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4602 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agomore tests
bellard [Wed, 28 May 2008 12:34:49 +0000 (12:34 +0000)]
more tests

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4601 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agovariable dynamic translation buffer size
bellard [Wed, 28 May 2008 12:30:31 +0000 (12:30 +0000)]
variable dynamic translation buffer size

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4600 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoAlign file accesses with cache=off (O_DIRECT) (Kevin Wolf, Laurent Vivier)
bellard [Wed, 28 May 2008 09:51:09 +0000 (09:51 +0000)]
Align file accesses with cache=off (O_DIRECT) (Kevin Wolf, Laurent Vivier)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4599 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoremoved unused code
bellard [Tue, 27 May 2008 21:18:39 +0000 (21:18 +0000)]
removed unused code

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4598 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoCRIS: Re-add the X flag to the tb flags, it allows for better code generation and...
edgar_igl [Tue, 27 May 2008 21:15:56 +0000 (21:15 +0000)]
CRIS: Re-add the X flag to the tb flags, it allows for better code generation and is practially always cleared.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4597 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoqemu-nbd tool (Anthony Liguori)
bellard [Tue, 27 May 2008 21:13:40 +0000 (21:13 +0000)]
qemu-nbd tool (Anthony Liguori)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4596 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoCRIS: Use $eda to instead of debug1 (removed) for fault addr.
edgar_igl [Tue, 27 May 2008 21:12:09 +0000 (21:12 +0000)]
CRIS: Use $eda to instead of debug1 (removed) for fault addr.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4595 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoCRIS: Restructure the translator to allow for better code generation.
edgar_igl [Tue, 27 May 2008 21:10:56 +0000 (21:10 +0000)]
CRIS: Restructure the translator to allow for better code generation.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4594 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoETRAX: Avoid compiler warning.
edgar_igl [Tue, 27 May 2008 21:05:21 +0000 (21:05 +0000)]
ETRAX: Avoid compiler warning.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4593 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoETRAX: Allow boot from flash. Support the watchdog timer and resets through it.
edgar_igl [Tue, 27 May 2008 21:04:41 +0000 (21:04 +0000)]
ETRAX: Allow boot from flash. Support the watchdog timer and resets through it.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4592 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoFree temps
blueswir1 [Tue, 27 May 2008 19:39:12 +0000 (19:39 +0000)]
Free temps

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4591 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoMove non-op functions from op_helper.c to helper.c and vice versa.
blueswir1 [Tue, 27 May 2008 17:35:30 +0000 (17:35 +0000)]
Move non-op functions from op_helper.c to helper.c and vice versa.
Rearrange interrupt handling to match other targets.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4590 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoMore TCG type fixes
blueswir1 [Mon, 26 May 2008 19:42:42 +0000 (19:42 +0000)]
More TCG type fixes

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4589 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoFix signed/unsigned issues of immediate version of brcond (malc)
bellard [Mon, 26 May 2008 19:11:07 +0000 (19:11 +0000)]
Fix signed/unsigned issues of immediate version of brcond (malc)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4588 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoFix cas on i386
blueswir1 [Mon, 26 May 2008 17:53:41 +0000 (17:53 +0000)]
Fix cas on i386

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4587 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agofixed x86_64 regression
bellard [Sun, 25 May 2008 21:01:05 +0000 (21:01 +0000)]
fixed x86_64 regression

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4586 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoppc dyngen fix (malc)
bellard [Sun, 25 May 2008 19:01:05 +0000 (19:01 +0000)]
ppc dyngen fix (malc)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4585 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoppc TCG target (malc)
bellard [Sun, 25 May 2008 18:59:57 +0000 (18:59 +0000)]
ppc TCG target (malc)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4584 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agojump simplification
bellard [Sun, 25 May 2008 18:49:06 +0000 (18:49 +0000)]
jump simplification

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4583 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agojump optimizations
bellard [Sun, 25 May 2008 18:41:58 +0000 (18:41 +0000)]
jump optimizations

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4582 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoupdate
bellard [Sun, 25 May 2008 18:24:40 +0000 (18:24 +0000)]
update

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4581 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agosuppressed unused macro handling
bellard [Sun, 25 May 2008 18:21:31 +0000 (18:21 +0000)]
suppressed unused macro handling

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4580 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoremove absolete function
bellard [Sun, 25 May 2008 18:01:40 +0000 (18:01 +0000)]
remove absolete function

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4579 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoremove absolete function
bellard [Sun, 25 May 2008 18:01:24 +0000 (18:01 +0000)]
remove absolete function

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4578 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agotransformed TN into temporaries - add local temporaries usage when needed - optimized...
bellard [Sun, 25 May 2008 17:26:41 +0000 (17:26 +0000)]
transformed TN into temporaries - add local temporaries usage when needed - optimized fcmovX

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4577 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoadded local temporaries
bellard [Sun, 25 May 2008 17:24:00 +0000 (17:24 +0000)]
added local temporaries

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4576 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoIgnore duplicate timer run requests.
pbrook [Sun, 25 May 2008 14:05:47 +0000 (14:05 +0000)]
Ignore duplicate timer run requests.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4575 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoImplement byte swapping accesses
blueswir1 [Sun, 25 May 2008 11:19:24 +0000 (11:19 +0000)]
Implement byte swapping accesses

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4574 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoNicer debug output
blueswir1 [Sun, 25 May 2008 11:17:46 +0000 (11:17 +0000)]
Nicer debug output

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4573 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoRemove bogus DisplayState member.
pbrook [Sun, 25 May 2008 10:10:12 +0000 (10:10 +0000)]
Remove bogus DisplayState member.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4572 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoFix VNC update regoin height.
balrog [Sun, 25 May 2008 00:38:47 +0000 (00:38 +0000)]
Fix VNC update regoin height.

'h' actually is the coordinate of bottom of the rectangle and not height.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4571 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoFix off-by-one unwinding error.
pbrook [Sun, 25 May 2008 00:36:06 +0000 (00:36 +0000)]
Fix off-by-one unwinding error.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4570 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoInvalidate VNC framebuffer on every resize.
balrog [Sun, 25 May 2008 00:14:34 +0000 (00:14 +0000)]
Invalidate VNC framebuffer on every resize.

On a resize, vncviewer keeps the image in the upper-left part of the screen
unmodified and fills the right end of the lines with black colour.  vnc.c       keeps the first n bytes of the framebuffer unmodified instead - meaning that
the client's image doesn't match the image in framebuffer and checking
for dirty rows gives wrong results.  We can either invalidate the whole
buffer or implement the same transformation as the client.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4569 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoTab-complete arguments for "logfile" in the monitor.
balrog [Sat, 24 May 2008 23:15:46 +0000 (23:15 +0000)]
Tab-complete arguments for "logfile" in the monitor.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4568 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoRelax a constraint for qemu_ld64 on ARM host.
balrog [Sat, 24 May 2008 23:12:19 +0000 (23:12 +0000)]
Relax a constraint for qemu_ld64 on ARM host.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4567 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoFix a deadly typo, correct comments.
balrog [Sat, 24 May 2008 22:56:51 +0000 (22:56 +0000)]
Fix a deadly typo, correct comments.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4566 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoConvert m68k target to TCG.
pbrook [Sat, 24 May 2008 22:29:16 +0000 (22:29 +0000)]
Convert m68k target to TCG.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4565 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoFix ARM host TLB.
pbrook [Sat, 24 May 2008 20:07:07 +0000 (20:07 +0000)]
Fix ARM host TLB.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4564 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoFix mov[tf].ps handling for MIPS, by Richard Sandiford.
ths [Sat, 24 May 2008 19:46:23 +0000 (19:46 +0000)]
Fix mov[tf].ps handling for MIPS, by Richard Sandiford.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4563 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoUn-break MIPS conditional moves, by Richard Sandiford.
ths [Sat, 24 May 2008 19:06:07 +0000 (19:06 +0000)]
Un-break MIPS conditional moves, by Richard Sandiford.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4562 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoImplement 64-bit constant loads
blueswir1 [Sat, 24 May 2008 18:09:50 +0000 (18:09 +0000)]
Implement 64-bit constant loads

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4561 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoUse sethi and arith functions, fix comment
blueswir1 [Sat, 24 May 2008 18:06:35 +0000 (18:06 +0000)]
Use sethi and arith functions, fix comment

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4560 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoFix stack offsets and alignment
blueswir1 [Sat, 24 May 2008 16:41:17 +0000 (16:41 +0000)]
Fix stack offsets and alignment

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4559 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoETRAX: Correct check for second nic.
edgar_igl [Sat, 24 May 2008 16:03:59 +0000 (16:03 +0000)]
ETRAX: Correct check for second nic.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4558 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoDont try to keep the tlb and the jmp cache synchronized.
edgar_igl [Sat, 24 May 2008 16:00:05 +0000 (16:00 +0000)]
Dont try to keep the tlb and the jmp cache synchronized.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4557 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoFix A20 debug dumps.
pbrook [Sat, 24 May 2008 14:48:38 +0000 (14:48 +0000)]
Fix A20 debug dumps.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4556 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoDynamically allocate tbs. Avoids branch range problems on RISC hosts.
pbrook [Sat, 24 May 2008 13:56:15 +0000 (13:56 +0000)]
Dynamically allocate tbs.  Avoids branch range problems on RISC hosts.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4555 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoDefine stack offsets
blueswir1 [Sat, 24 May 2008 05:36:16 +0000 (05:36 +0000)]
Define stack offsets

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4554 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoMore TCGv type fixes.
pbrook [Sat, 24 May 2008 02:24:25 +0000 (02:24 +0000)]
More TCGv type fixes.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4553 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoFix ARM conditional branch bug.
pbrook [Sat, 24 May 2008 02:22:00 +0000 (02:22 +0000)]
Fix ARM conditional branch bug.
Add tcg_gen_brcondi.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4552 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoFix helper operand type mismatch.
pbrook [Sat, 24 May 2008 02:12:32 +0000 (02:12 +0000)]
Fix helper operand type mismatch.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4551 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoFix bogus test syntax.
pbrook [Fri, 23 May 2008 23:16:42 +0000 (23:16 +0000)]
Fix bogus test syntax.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4550 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoFix parallel builds for dyngen, by Jason Wessel.
ths [Fri, 23 May 2008 19:19:55 +0000 (19:19 +0000)]
Fix parallel builds for dyngen, by Jason Wessel.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4549 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoComment non-obvious calculation. Don't clobber r3 in qemu_st64.
balrog [Fri, 23 May 2008 18:51:15 +0000 (18:51 +0000)]
Comment non-obvious calculation.  Don't clobber r3 in qemu_st64.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4548 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoA branch insn must not overwrite the branch target before relocation.
balrog [Fri, 23 May 2008 18:50:44 +0000 (18:50 +0000)]
A branch insn must not overwrite the branch target before relocation.

When a branch to label is translated it generates a reloc that is filled in
when the label is translated.  However, when handling an exception and
searching for the pc we abort the translation early and we sometimes
translate the branch but not the corresponding label and so no relocation
is done.  When the block is executed again the branch points to no-where.

It seems tcg/sparc/ is going to suffer from the same issue.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4547 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoSwithc some MIPS CP0 accesses to TCG.
ths [Fri, 23 May 2008 18:10:51 +0000 (18:10 +0000)]
Swithc some MIPS CP0 accesses to TCG.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4546 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoSwitch MIPS movf/movt to TCG.
ths [Fri, 23 May 2008 18:06:27 +0000 (18:06 +0000)]
Switch MIPS movf/movt to TCG.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4545 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoadded tcg_temp_free() and improved the handling of constants
bellard [Fri, 23 May 2008 17:33:39 +0000 (17:33 +0000)]
added tcg_temp_free() and improved the handling of constants

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4544 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoFix build failure with old kernel headers (loop.h is incompatible with
pbrook [Fri, 23 May 2008 16:06:43 +0000 (16:06 +0000)]
Fix build failure with old kernel headers (loop.h is incompatible with
glibc headers).

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4543 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoFix qemu_ld/st for mem_index > 0 on arm host.
balrog [Fri, 23 May 2008 12:55:11 +0000 (12:55 +0000)]
Fix qemu_ld/st for mem_index > 0 on arm host.

offsetof(CPUState, tlb_table[mem_index][0].addr_read) with mem_index > 0
was larger than max immediate offset for ldr and str (12-bit) so insert an
additional insn to add the mem_index offset.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4542 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoDefine TCG_TARGET_CALL_STACK_OFFSET on arm.
balrog [Fri, 23 May 2008 12:47:22 +0000 (12:47 +0000)]
Define TCG_TARGET_CALL_STACK_OFFSET on arm.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4541 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agocompilation fix
bellard [Fri, 23 May 2008 11:58:32 +0000 (11:58 +0000)]
compilation fix

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4540 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoremoved warning
bellard [Fri, 23 May 2008 11:56:45 +0000 (11:56 +0000)]
removed warning

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4539 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoTCG profiler clean up
bellard [Fri, 23 May 2008 09:57:34 +0000 (09:57 +0000)]
TCG profiler clean up

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4538 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoprofiler clean up
bellard [Fri, 23 May 2008 09:52:20 +0000 (09:52 +0000)]
profiler clean up

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4537 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoFix build failure for MIPS64 targets on 64-bit hosts.
ths [Fri, 23 May 2008 01:31:57 +0000 (01:31 +0000)]
Fix build failure for MIPS64 targets on 64-bit hosts.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4536 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoDelete dead code.
ths [Thu, 22 May 2008 20:42:15 +0000 (20:42 +0000)]
Delete dead code.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4535 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoRegister op helpers
blueswir1 [Thu, 22 May 2008 18:16:25 +0000 (18:16 +0000)]
Register op helpers

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4534 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoSwitch MIPS branch handling to TCG, and clean out pointless wrapper
ths [Thu, 22 May 2008 17:46:10 +0000 (17:46 +0000)]
Switch MIPS branch handling to TCG, and clean out pointless wrapper
functions/macros.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4533 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agouse debug_insn_start to have nicer debug traces
bellard [Thu, 22 May 2008 17:00:49 +0000 (17:00 +0000)]
use debug_insn_start to have nicer debug traces

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4532 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoadded debug_insn_start debug instruction
bellard [Thu, 22 May 2008 16:56:05 +0000 (16:56 +0000)]
added debug_insn_start debug instruction

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4531 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoproper helper definition registering (all targets must do that)
bellard [Thu, 22 May 2008 16:11:04 +0000 (16:11 +0000)]
proper helper definition registering (all targets must do that)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4530 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agodebug output: write helper names
bellard [Thu, 22 May 2008 16:08:32 +0000 (16:08 +0000)]
debug output: write helper names

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4529 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agomore generic call codegen
bellard [Thu, 22 May 2008 14:59:57 +0000 (14:59 +0000)]
more generic call codegen

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4528 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agofixed zero shifts (64 bit case)
bellard [Thu, 22 May 2008 14:39:25 +0000 (14:39 +0000)]
fixed zero shifts (64 bit case)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4527 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agoFix block-vmdk.c:vmdk_close() use-after-free, by Ed Maste.
ths [Thu, 22 May 2008 13:51:48 +0000 (13:51 +0000)]
Fix block-vmdk.c:vmdk_close() use-after-free, by Ed Maste.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4526 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agosmall shift opts
bellard [Thu, 22 May 2008 13:25:14 +0000 (13:25 +0000)]
small shift opts

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4525 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agooptimization of shifts by a constant
bellard [Thu, 22 May 2008 12:36:31 +0000 (12:36 +0000)]
optimization of shifts by a constant

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4524 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agolahf/sahf cpuid test
bellard [Thu, 22 May 2008 10:13:38 +0000 (10:13 +0000)]
lahf/sahf cpuid test

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4523 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agocmpxchg8b fix - added cmpxchg16b
bellard [Thu, 22 May 2008 09:52:38 +0000 (09:52 +0000)]
cmpxchg8b fix - added cmpxchg16b

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4522 c046a42c-6fe2-441c-8c8c-71466251a162

16 years agocmpxchg 64 bit fix
bellard [Thu, 22 May 2008 09:36:08 +0000 (09:36 +0000)]
cmpxchg 64 bit fix

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4521 c046a42c-6fe2-441c-8c8c-71466251a162