gbeauche
57ae6ed470
Add initial support for instruction skipping on Linux/ia64. It was more
...
complex than expected but it was fun to play with. Who designed this ISA?
I'd love to see how the decoder is implemented in HW, by all means it is
not "simplified" unless I missed some pattern...
2008-01-06 16:25:03 +00:00
gbeauche
a56e4b9be0
Hack around over-optimized labels-as-values extension from GCC.
2008-01-06 16:19:27 +00:00
gbeauche
e08bb16edf
ISO C++ conformance fixes: remove superfluous coma at the end of enum definitions.
2008-01-06 16:10:30 +00:00
nigel
85dfeb1522
Corrent HTML for the accent on Gwenolé's name
2008-01-06 05:14:50 +00:00
gbeauche
a93bec88fd
Don't clobber "sip" arg from our sigsegv_info wrapper (renamed to SIP).
2008-01-05 08:35:08 +00:00
nigel
6069d6814c
Replace mention to 1_prepare_files.sh script with discrete commands
2008-01-02 23:19:54 +00:00
gbeauche
b5746b4f68
Add SSSE3 optimizations (Intel Core 2 CPUs and newer) for LVX, STVX, VPERM.
...
This brings an overall +10% performance improvement in AltiVec Fractal Carbon.
2008-01-01 21:51:56 +00:00
gbeauche
c578952735
Add macros for SSSE3 instructions encoding (PSHUFB in particular).
2008-01-01 21:48:41 +00:00
gbeauche
c581996f82
Detect SSE 4.1 and SSE 4.1.
2008-01-01 13:34:47 +00:00
gbeauche
054c37ca0c
Happy New Year!
2008-01-01 09:47:39 +00:00
gbeauche
c8cb4879a4
Happy New Year!
2008-01-01 09:40:36 +00:00
gbeauche
26f9b1d38b
Fix instruction skipping on MacOS X in the fast path case.
2007-12-31 18:07:01 +00:00
gbeauche
b5ac365858
Add support for 64-bit MacOS X for PowerPC (untested beyond "it compiles").
2007-12-31 06:59:39 +00:00
gbeauche
9fa1bbd972
According to kernel sources, that is XNU 344.49 (10.2.8), XNU 517.12.7 (10.3.9),
...
XNU 792.21.3 (10.4.10) and XNU 1228 (10.5.0), exception handler code[1] always
contains the fault address nowadays. So make it the default fast path but keep
provisions to check that at run-time first.
This yields a nearly 4x improvement in SIGSEGV recovery but MacOS X is still
suboptimal wrt. Linux, so VOSF is still not possible with frameskip == 0.
XXX: the ppc kernel had bugs that caused DAR (put into code[1]) to be incorrectly
decoded. This would need a broader test audience or more careful audit of the
sources changes.
2007-12-30 12:11:17 +00:00
gbeauche
19e145ad16
Sync with new SIGSEGV API.
2007-12-30 09:18:40 +00:00
gbeauche
7e7827a886
More overrides for MacOS X.
2007-12-30 09:15:32 +00:00
gbeauche
38501abd6a
Fix build with new MacOS X extfs implementation (in C++).
2007-12-30 09:15:00 +00:00
gbeauche
016dfddd79
Sync with the new SIGSEGV API.
2007-12-30 08:47:34 +00:00
gbeauche
902079ec8e
Improve API for systems that require explicit calls to functions to retrieve
...
the memory addresses that triggered a SIGSEGV (e.g. MacOS X).
2007-12-30 08:45:18 +00:00
gbeauche
25c5b9599e
Update to slirp sources from QEMU 0.9.0:
...
- fix UDP (Jason Wessel)
- enable TCP_NODELAY for slirp redirection (Daniel Jacobowitz)
2007-11-03 16:36:35 +00:00
gbeauche
b899d55068
Don't raise SIGPIPE, let errno be set to EPIPE. i.e. this fixes slirp ethernet
...
mode with no listening port on the remote host.
2007-11-03 11:31:36 +00:00
gbeauche
d7eb0f4d6d
Update to slirp sources from QEMU 0.8.2:
...
- set slirp client hostname
- fix slirp redirection on systems without a useful host IP address
- separate alias_addr (10.0.2.2) from our_addr (Ed Swierk)
- fix 32+ KB packets handling (Ed Swierk)
- fix UDP broadcast translation error
- solaris port (Ben Taylor)
2007-11-03 11:11:42 +00:00
gbeauche
c3a75ac75a
Add VERSION file so that to track differences from "upstream" slirp sources, i.e. QEMU.
2007-11-03 10:01:27 +00:00
gbeauche
d83c11faa2
Host OS name representation must be large enough to handle any kind of native
...
encoding (e.g. UTF-8 on MacOS X).
2007-11-03 09:59:39 +00:00
gbeauche
9000d4f54c
Rewrite ExtFS support for MacOS X. This implementation uses xattrs (metadata)
...
on Tiger+ to store FInfo and FXInfo. Otherwise, plain old .finfo/ helpers are
used. "Safe" flags and fields are always synchronized to/from MacOS X.
BTW, CFString leak was fixed at the same time.
2007-11-01 15:33:22 +00:00
asvitkine
dc524bb30a
use the new SDL 1.2.12 env variable to allow the OS to launch the screensaver
...
when sheepshaver is running - must be linking to sdl 1.2.12 or later for it
to take effect
2007-08-27 21:45:13 +00:00
asvitkine
5b161928ed
copy prefs stuff into app bundle
2007-07-28 15:50:30 +00:00
asvitkine
059540bbb8
more prefs stuff
2007-07-28 15:46:17 +00:00
asvitkine
a70c79b3cb
support for prefs stuff
2007-07-28 15:45:12 +00:00
asvitkine
eae5f4ec20
support new prefs editor handling (rerun autogen)
2007-07-28 15:44:36 +00:00
asvitkine
9fd74d26cf
make unix root textbox larger in os x prefs editor
2007-07-28 15:23:12 +00:00
asvitkine
3c07ca5344
Standalone NIB, used for the PrefsEditor within SheepShaver
2007-07-28 15:17:46 +00:00
asvitkine
e90be61f19
Preparing for built-in Cocoa prefs editor
2007-07-28 14:53:08 +00:00
gbeauche
1cf3b07fe6
Use semaphores to suspend the redraw thread while switching video mode.
2007-07-21 11:41:07 +00:00
gbeauche
efa32be9ec
Optimize invalidate_cache_range() for short ranges.
2007-07-21 10:25:51 +00:00
asvitkine
ff172bd87d
Some changes to PrefsEditor stuff to ease future integration with SheepShaver.
2007-07-16 02:38:53 +00:00
gbeauche
a5778cd5cb
Fix xBCD instruction for 68040 emulation: the NV flags shall not be affected.
2007-06-30 08:00:31 +00:00
gbeauche
35bf8b2c25
Use NSIMAGE graphics mode for MacOS X on Intel platforms for now. Otherwise
...
it's crashing in some Apple code.
2007-06-30 07:33:30 +00:00
gbeauche
7f2dfe7f4f
Fix LSL & LSR instructions so that they preserve the X flags when the
...
shift count is 0. Likewise for ASR + another improvement to avoid shifting
by halves (propagated bit is reset to original's when necessary).
2007-06-29 16:53:04 +00:00
gbeauche
9c13d5cda9
Implement CMOV.B and CMOV.W translations. Only the latter has a native
...
x86 equivalent however.
2007-06-29 16:36:03 +00:00
gbeauche
b3f62598b7
More human readable instruction names (from e-uae).
2007-06-29 16:32:05 +00:00
gbeauche
e3f9d46556
Improve heuristic for VOSF profitability: we should not spend more than
...
the half of a video interrupt quantum for updating the screen. Also improve
the wording of the result.
2007-06-16 07:24:39 +00:00
gbeauche
320b4ccd61
Add Darwin/x86_64 support. Fix EDX register index for i386 insn decoder.
2007-06-16 06:21:57 +00:00
gbeauche
e9c5625ada
Fix REAL_ADDRESSING mode on MacOS X, aka move Mach defines to config_macosx.h
...
and fix lowmem (BLESS) to handle other-endian binaries.
2007-06-15 22:54:24 +00:00
gbeauche
41df47a596
Disable cxmon by default for MacOS X builds. Add hackery to cross-compile
...
a working 10.2/ppc binary.
2007-06-15 21:46:25 +00:00
gbeauche
92ff210e4f
Enable universal builds with --enable-universal
...
Move arch-dependent definitions to config_macosx.h, i.e. make them compile
time instead of configure time. Support IEEE FPU emulation core only.
2007-06-15 17:11:46 +00:00
gbeauche
7015458281
Fix cxmon files inclusion. Drop support for non ppc & x86 MacOS X arches.
...
Make JIT files & defs selection at build-time, not configure-time (FATs).
NOTE: be careful, larger changes are yet to come.
2007-06-15 10:11:28 +00:00
gbeauche
e2e8558ff1
Build MacOS X binaries only from the command line. Prepare the configure
...
scripts as follows: [NO_CONFIGURE=1] ../Unix/autogen.sh
Second round will be to build FAT binaries.
2007-06-15 09:16:58 +00:00
gbeauche
9617ca3033
Fix MOVEC for 68020/68030 emulation (MSP & ISP are supported control regs).
2007-06-15 08:10:48 +00:00
gbeauche
b05833a86b
Fix JIT for 68020/68030 emulation mode.
2007-06-15 08:09:01 +00:00