gbeauche
40fcbdc172
Avoid use of Host2MacAddr() with static data as it may need to force
...
a 32-bit address truncation on 64-bit platforms with DIRECT_ADDRESSING
or with platforms with particular Direct Addressing modes (a.g. Cygwin)
2004-11-22 22:16:09 +00:00
gbeauche
e1bbf0714b
PPC_REENTRANT_JIT is only valid with JIT enabled
2004-11-22 22:09:05 +00:00
gbeauche
114f5ff6c7
Use BUILD_SHEEPSHAVER_PROCEDURE to allocate static procedures into the
...
SheepShaver globals. Fix build of sheepshaver_glue.cpp without JIT.
2004-11-22 22:04:38 +00:00
gbeauche
7be8af917c
Try to explain the SheepShaver globals
2004-11-22 21:50:45 +00:00
gbeauche
d6c7e0eb23
New SheepShaver globals layout, move ZeroPage into the middle. Since it is
...
a read-only page, it can also be used to detect overlaps between Procedure
space and Data space.
Provide native Windows implementation of shared MacOS KernelData allocation.
This is moved under main() so that to avoid a weird linking error. This native
implementation is independent of Cygwin IPC (and possible background server)
2004-11-22 21:33:32 +00:00
gbeauche
40367bd931
new SheepShaver globals layout
2004-11-22 21:22:58 +00:00
gbeauche
970bc59e40
fix build without dyngen enabled
2004-11-21 20:50:51 +00:00
gbeauche
655269516d
Windows debug functions only in native win32 mode
2004-11-21 08:11:20 +00:00
gbeauche
a6bf2d0928
add some code to gather stats on m68k registers used in translated blocks
2004-11-20 23:35:16 +00:00
gbeauche
01a1d4e8b2
Use Windows clipboard code with SDL graphics only. X11 output will use
...
the X server glue anyway
2004-11-17 00:59:04 +00:00
gbeauche
c427f0f536
Windows clipboard support (copy-paste)
2004-11-17 00:57:06 +00:00
gbeauche
ba11daf004
Inherit clip_unix.cpp from Basilisk II, now they are identical.
2004-11-15 23:41:08 +00:00
gbeauche
ce67261af4
lock X11 display better around update_display_window_vosf()
2004-11-15 23:40:23 +00:00
gbeauche
e85f4397c8
Backport copy-paste of 'TEXT' from SheepShaver
2004-11-15 23:27:43 +00:00
gbeauche
e7fb4be12f
Fast spinlocks from SheepShaver for X11 clipboard handling
2004-11-15 23:24:09 +00:00
gbeauche
df471bbbe6
Fix build on Windows with recent gcc (winbug)
2004-11-15 00:24:16 +00:00
gbeauche
dc13732db0
Add Lauri's icon for Basilisk II builds on Windows
2004-11-15 00:07:54 +00:00
gbeauche
df85bf7885
Windows resources (icon)
2004-11-14 23:47:22 +00:00
gbeauche
5f44aa0266
Check for egrep early, as AC_EGREP_CPP wouldn't work correctly otherwise
...
(e.g. GCC version not detected, likewise for ANSI C headers). Add check
for Windows exceptions support. Some cosmetics for Cygwin.
2004-11-14 23:24:51 +00:00
gbeauche
cb99e7673d
Don't use pthread_mutexattr_setprotocol() on Cygwin targets as
...
PTHREAD_PRIO_INHERIT is not defined correctly and it probably wouldn't
work as expected anyway.
2004-11-14 23:23:07 +00:00
gbeauche
adf82c8f45
Handle .exe suffix for Windows builds. Remove obsolete rules for cpuopti.
2004-11-14 23:21:54 +00:00
gbeauche
87a73ed054
Windows keycodes
2004-11-14 23:01:18 +00:00
gbeauche
48b39b9eb1
Implement RGB555 mode on 16-bit displays (Windows)
2004-11-14 21:41:46 +00:00
gbeauche
68083d1102
Integrate SIGSEGV recovery from libsigsegv for Windows and Cygwin.
...
Also implement instruction skipper for Windows/x86.
2004-11-13 23:44:11 +00:00
gbeauche
347f7ce77b
Windows memory allocators
2004-11-13 23:39:58 +00:00
gbeauche
7533cac203
Implement Direct Addressing mode for SheepShaver.
2004-11-13 14:28:49 +00:00
gbeauche
3ace37f4eb
Implement Direct Addressing mode similarly to Basilisk II. This is to get
...
SheepShaver working on OSes that don't support maipping of Low Memory globals
at 0x00000000, e.g. Windows.
2004-11-13 14:09:16 +00:00
gbeauche
9e330d5615
fix cpuid test on x86_64 and newer binutils
2004-11-11 07:25:45 +00:00
gbeauche
6774a0821d
fix tester for BSF flags handling
2004-11-11 07:07:55 +00:00
gbeauche
62f9a4bbba
fix build on 32-bit platforms
2004-11-10 10:23:38 +00:00
gbeauche
a4a6233dab
fix detection of <linux/if.h> (thanks Bob Deblier)
2004-11-10 07:33:15 +00:00
gbeauche
c3333e8ef6
fix deps for parallel build (tested make -j4)
2004-11-10 07:24:33 +00:00
gbeauche
5d79c5a5f2
fix build on 64-bit platforms with gcc3.4, especially on x86_64
2004-11-10 06:47:17 +00:00
gbeauche
20f5f531ca
fix inline dispatcher to really generate a cmove on x86-64 (silly bug!)
2004-11-08 23:24:54 +00:00
gbeauche
0c255e1fbd
Merge BSF simulation on P4 from Amithlon. Use 33-bit memory addressing model.
2004-11-08 21:10:46 +00:00
gbeauche
e3c5f1769d
Enable 33-bit memory addressing on 64-bit JIT capable platforms (e.g. x86-64).
...
This is useful to get rid of address offset sign extensions. It uses POSIX
shared memory to create aliased regions, fallback to usual sign-extension
way if shm_open et al. don't work (e.g. no /dev/shm mounted)
2004-11-08 21:07:07 +00:00
gbeauche
0ba075050c
Enable RIP-relative addressing, optimize REX conditions processing in
...
! X86_FLAT_REGISTERS mode, fix __REX_mem encodings (e.g. POPLm)
2004-11-08 20:48:19 +00:00
gbeauche
1e4fcc21bf
update for SDL audio/video + JIT compiler for x86_64
2004-11-03 00:07:35 +00:00
gbeauche
c21650b7a8
fix protection changes on translation cache + cosmetic fixlet
2004-11-02 23:52:00 +00:00
gbeauche
3fcceb052c
fix JIT FPU for x86_64
2004-11-02 23:28:19 +00:00
gbeauche
cfaddce448
disable store motion on gcc >= 3.3-hammer (and normal 3.4), where the option
...
is available actually
2004-11-02 20:40:54 +00:00
gbeauche
129f80faf6
preserve r11 as the register used to resolve pointers to functions
2004-11-01 18:40:30 +00:00
gbeauche
b3bd00f159
- affine need_to_preserve[] to get close to linux/x86_64 ABI
...
- optimize NOP fillers on x86-64 (based on GNU as implementation)
2004-11-01 17:12:55 +00:00
gbeauche
382294ef55
enable JIT on x86_64
2004-11-01 16:07:39 +00:00
gbeauche
e58fbc745b
revive and fix almost two-year old port to x86_64
2004-11-01 16:01:51 +00:00
gbeauche
730364ac1e
- optimize absolute addresses into RIP relative, if possible
...
- fix MOVQir as the operand is 64-bit
- fix IMULWrr, IMULLrr, IMULQrr, MOVSBWrr, MOVZBWrr
2004-11-01 15:37:40 +00:00
gbeauche
c12d2fa0ea
add dumb but handy brute-force runtime assembler verifier, someone will
...
probably want to rewrite it to use BFD/opcodes internals for checks
2004-11-01 15:30:46 +00:00
gbeauche
33be2e8ace
Reorder SPL, BPL, SIL, DIL IDs so that 8-bit register allocation is simpler
...
Fix MOVZBL and MOVSBL encodings with those extended 8-bit registers
2004-10-31 16:02:04 +00:00
gbeauche
87b79bdc20
fix SIB encoding with base=r13
...
fix PUSH/POP with x86_64 extended registers
fix CALL/JMP REX prefixes
2004-10-24 22:22:49 +00:00
gbeauche
c45fa9c75e
fix build on FC2/x86_64 (Bob Deblier)
2004-09-27 19:08:23 +00:00