gbeauche
|
9e1d1606ff
|
Cosmetic fixes to vm_write_memory_*() functions.
|
2003-12-26 17:27:47 +00:00 |
|
gbeauche
|
97ce4fdc75
|
Match Linux/ppc native version better: jump to ROM with EmulatorData in r4,
preserve CR & XER registers on EmulOp.
|
2003-12-25 23:54:36 +00:00 |
|
gbeauche
|
561046449a
|
Fix no JIT & no decode cache case to default to interpretive mode only.
|
2003-12-25 23:33:15 +00:00 |
|
gbeauche
|
c48515b6d5
|
Instruction skipper for Solaris/SPARC.
|
2003-12-20 23:22:25 +00:00 |
|
gbeauche
|
47f64bdcb8
|
Add support for Linux/hppa, FreeBSD/alpha. Misc debugging output.
|
2003-12-20 21:50:08 +00:00 |
|
gbeauche
|
36ee9370a6
|
Fix build with DEC C++ compiler on Tru64.
|
2003-12-20 21:44:52 +00:00 |
|
gbeauche
|
9b99a095f0
|
MIPS instruction skipper. TODO: check LWL/LWR semantics.
|
2003-12-20 10:06:18 +00:00 |
|
gbeauche
|
fdf5970c28
|
Fix subterfuge mode on IRIX/mips. Get PC in both modes for Irix too
|
2003-12-20 07:43:56 +00:00 |
|
gbeauche
|
f5aed53e3c
|
clean-ups, going to beat myself tonight
|
2003-12-15 15:27:01 +00:00 |
|
gbeauche
|
c3a706d354
|
There may be extra instructions before moving stuff to SCC registers.
|
2003-12-15 15:25:38 +00:00 |
|
gbeauche
|
24c4ae354c
|
Fix SCC initialization code detection. Move up AddrMap patch space since
we clobber 40 bytes below it and it may intersect with GetScrap patch space.
|
2003-12-15 15:23:59 +00:00 |
|
gbeauche
|
ae8c08b260
|
Generic ROM patches from ROMTYPE_PARCELS experiments, no apparent
regession. There is no improvement either.
|
2003-12-14 14:23:46 +00:00 |
|
gbeauche
|
bbde2a2054
|
Use an alternate stack base while servicing PowerPC interrupts.
|
2003-12-05 13:37:56 +00:00 |
|
gbeauche
|
c3bb2eabf1
|
Really clear the zero page.
|
2003-12-05 12:41:19 +00:00 |
|
gbeauche
|
4755f118df
|
Revert 32-bit EA load/stores workaround, problem was 0xffffffff read from
[PgChk]+4 which yields to 3 on 32-bit arches and something > 32-bit on AMD64
|
2003-12-05 12:38:44 +00:00 |
|
gbeauche
|
e517594a51
|
Fake reading from [HpChk]+4 (FIXME: the callchain reports some function
from DriverServicesLib). Also make fake SCSIGlobals map to zero page.
|
2003-12-05 12:37:14 +00:00 |
|
gbeauche
|
44e54f730a
|
Add XLM_ZERO_PAGE globals which points to a read-only page with all bits
set to zero.
|
2003-12-05 12:36:11 +00:00 |
|
gbeauche
|
091a219280
|
Use a unique ExecuteNative() interface in any case, i.e. native & emulated
|
2003-12-04 23:37:38 +00:00 |
|
gbeauche
|
7a7363fd18
|
Forgot to add thunks.cpp to BeOS Makefile too
|
2003-12-04 22:34:48 +00:00 |
|
gbeauche
|
d1a676eb1c
|
Fix ExecutePPC() with nw SheepRoutineDescriptor
|
2003-12-04 22:34:34 +00:00 |
|
gbeauche
|
ddbebd7111
|
Fix ExecutePPC() merge with new SheepRoutineDescriptor
|
2003-12-04 22:33:24 +00:00 |
|
gbeauche
|
779b4858d2
|
We do need <pthread.h> in any case, especially native Linux/PPC
|
2003-12-04 22:29:15 +00:00 |
|
gbeauche
|
63219873b4
|
Don't set WANT_JIT if not EMULATED_PPC
|
2003-12-04 22:28:40 +00:00 |
|
gbeauche
|
158f63d1e3
|
Force 32-bit EA in load/store operations. This fixes SheepShaver/JIT on AMD64.
|
2003-12-04 18:10:36 +00:00 |
|
gbeauche
|
5dca41d253
|
Add gen_invoke_CPU_im_im() to invoke do_record_step(pc, opcode).
|
2003-12-04 17:53:04 +00:00 |
|
gbeauche
|
328bb9f239
|
Add new thunking system for 64-bit fixes.
|
2003-12-04 17:26:38 +00:00 |
|
gbeauche
|
982424dabd
|
Use "cpu/vm.hpp" if EMULATED_PPC, so that target optimized functions are
used to match alignment/endianess needs.
|
2003-12-03 15:06:09 +00:00 |
|
gbeauche
|
490fa2d553
|
Add x86 asm opts (though disabled for now)
|
2003-12-03 11:45:45 +00:00 |
|
gbeauche
|
5b0569944f
|
Don't enable asm opts for now, this hides measurability of other generic
optimizations. Remove no longer used synthetic instructions.
|
2003-12-03 11:45:13 +00:00 |
|
gbeauche
|
0c2735dbcc
|
fix stats reports
|
2003-12-03 10:59:43 +00:00 |
|
gbeauche
|
7ebe0347bf
|
Add "jit" prefs item. Fix PPC_DECODE_CACHE version to fill in new min_pc &
max_pc members of block info. Increase -finline-limit to 10000 for older gcc
|
2003-12-03 10:52:50 +00:00 |
|
gbeauche
|
34f90d6b3a
|
PowerPC tester: open results file in binary mode, aka fix pb on DOS.
|
2003-12-03 09:16:46 +00:00 |
|
gbeauche
|
8db8d10287
|
fix extraction of XER from QEMU engine
|
2003-12-03 07:27:05 +00:00 |
|
gbeauche
|
04214f3820
|
Fix decrement the CTR, then branch conditional if decremented CTR != 0.
Remove CR cache for now. Remove BC & MODE_68K hacks for SheepShaver,
that was a colateral damage of wrong branch emulation of the former.
|
2003-12-02 22:49:18 +00:00 |
|
gbeauche
|
dc79320904
|
cleanups
|
2003-12-02 15:00:40 +00:00 |
|
gbeauche
|
3ca595a337
|
PowerPC tester: add support for QEMU engine.
|
2003-12-02 14:57:07 +00:00 |
|
gbeauche
|
07c8e505c9
|
PowerPC tester: add support for Bart's Model 3 CPU emulator
|
2003-12-02 11:29:46 +00:00 |
|
gbeauche
|
32133b2261
|
Add PPC_PROFILE_GENERIC_CALLS, don't enable PPC_PROFILE_COMPILE_TIME by
default.
|
2003-12-01 13:51:35 +00:00 |
|
gbeauche
|
e2ca6270f8
|
Implement ISYNC, MTCRF, MCRF.
|
2003-12-01 13:40:38 +00:00 |
|
gbeauche
|
054748532a
|
NOP'ize unimplemented instructions
|
2003-12-01 13:21:41 +00:00 |
|
gbeauche
|
dd956c78db
|
gather some stats on untranslated instructions
|
2003-12-01 13:07:26 +00:00 |
|
gbeauche
|
32f34c07c5
|
fix stack allocation, really roundup to next 16 KB boundaries
|
2003-12-01 11:02:13 +00:00 |
|
gbeauche
|
f034ae704f
|
handle ROM areas and put associated blocks into dormant state
|
2003-12-01 00:16:21 +00:00 |
|
gbeauche
|
ceb9b4a428
|
cleanups & optimize for constant branches (i.e. follow them).
|
2003-12-01 00:03:02 +00:00 |
|
gbeauche
|
4a3cd024ed
|
better handling of static translation cache allocation, handle nested
execution paths from the cpu core, cleanups for KPX_MAX_CPUS == 1.
|
2003-11-30 17:21:53 +00:00 |
|
gbeauche
|
c1dba58808
|
fix & reenable asm compare ops for ppc
|
2003-11-30 17:18:17 +00:00 |
|
gbeauche
|
10db506aa5
|
handle CR cache though it's not efficient with current approach without
superblock (traces) optimization.
|
2003-11-30 17:17:32 +00:00 |
|
gbeauche
|
7594e26d36
|
fix new block creation on full cache that was just invalidated, add
provisions for following constants jumps in next commit.
|
2003-11-30 17:16:24 +00:00 |
|
gbeauche
|
833fc0c935
|
remove dead code
|
2003-11-30 17:13:10 +00:00 |
|
gbeauche
|
efad4ff3b6
|
Handle even more XER test masks to be preserved or to be set.
|
2003-11-30 09:07:36 +00:00 |
|