Commit Graph

574 Commits

Author SHA1 Message Date
nigel
dea9029450 Use CGIMAGEREF as drawing strategy, and update comments explaining why 2003-03-21 06:14:22 +00:00
gbeauche
b48a5a3253 Detect x86-64 2003-03-20 13:49:49 +00:00
gbeauche
96ae75cd7e Optimize TEST[BWLQ]ir case where dest register is %rax
Add JCCSii and JCCii which directly takes the displacement value to encode
2003-03-19 17:06:22 +00:00
gbeauche
ecab19aa4e Emulate CMOV in the new code generator for processors that don't support
this intruction
2003-03-19 17:05:02 +00:00
gbeauche
06af072a40 Add missing wrappers of the new runtime-assembler primitives 2003-03-19 16:32:51 +00:00
gbeauche
a3b815366a Add facility to filter out some opcodes from the compfunctbl[] et al. 2003-03-19 16:28:23 +00:00
gbeauche
547bd6ab2c Fix MOVBrr 2003-03-19 16:25:12 +00:00
gbeauche
c4bf8e0695 Fix 0(%rbp,<reg>,1) operand encoding 2003-03-19 11:34:10 +00:00
gbeauche
da8d81509e Add new backend, disabled for until it's proofread and fully functional
Remove obsolete string-related instructions
2003-03-18 17:26:32 +00:00
gbeauche
5fb74e3592 Add sign/zero-extend instructions 2003-03-18 17:01:44 +00:00
gbeauche
29f636c2eb Fix _REXBmr(). Add CPUID. Some C++ compiler fixes. Make x86_emit_failure()
be void, and let x86_emit_failure0() be an int expression instead.
2003-03-18 16:28:23 +00:00
gbeauche
8271c0503e Add CMOV and BSF/BSR instructions 2003-03-18 13:12:56 +00:00
gbeauche
e07bfdbc8b Handle absolute and RIP addressing modes in x86-64 2003-03-18 10:08:16 +00:00
gbeauche
ce3d90ff5e clobber "cc" for flags, not "flags". Thanks Milan for noticing it. 2003-03-17 22:37:55 +00:00
gbeauche
08e9f936eb Add some SSE/SSE2 instructions 2003-03-17 17:18:24 +00:00
gbeauche
32e53e7b3b typo 2003-03-14 17:11:49 +00:00
gbeauche
9da9568525 Document current JIT options. 2003-03-14 17:10:47 +00:00
gbeauche
df97c3d02e JIT compiler is integrated but not yet the default for Linux/x86 and
FreeBSD/x86.
2003-03-14 17:10:19 +00:00
gbeauche
c2566295af Implement a generic setzflg_l() for P4, thus permitting to re-enable
translation of ADDX/SUBX/BCLR/BTST/BSET/BCHG instructions. i.e. make
it faster. ;-)
2003-03-13 20:34:34 +00:00
gbeauche
0cfa3126b3 Workaround change in flags handling for BSF instruction on Pentium 4.
i.e. currently disable translation of ADDX/SUBX/B<CHG,CLR,SET,TST> instructions
in that case. That is to say, better (much?) slower than inaccurate. :-(
2003-03-13 15:57:01 +00:00
gbeauche
a8e76deb69 Fix align_target with a padding of 0 bytes 2003-03-13 09:51:31 +00:00
nigel
bd29aa7a27 Mouse position fixes when in fullscreen mode. 2003-03-11 11:44:14 +00:00
nigel
029178546f Minor doco updates 2003-03-11 11:32:51 +00:00
nigel
8a62df5ae7 32bit defaults for windowed mode. 2003-03-11 11:31:56 +00:00
nigel
7726ef1b05 Simplified (and sped up) mouse movement processing when in fullscreen mode. 2003-03-11 11:31:01 +00:00
nigel
ef73063528 Corrected mouse co-ordinate processing after full screen resizing,
simplified mouse movement processing for full screen, added a few comments.
2003-03-11 11:27:20 +00:00
cebix
a69dcbb18f some cleanups 2003-02-06 19:24:09 +00:00
cebix
4bca966e18 added "install" target 2003-02-06 19:10:08 +00:00
gbeauche
45289042e6 Add some FPU instructions. Minor clean-ups. 2003-01-31 23:48:10 +00:00
gbeauche
ee7cea923a Add new run-time assembler derived from GNU lightning. It is suitable for
both i386 and x86-64 architectures. Still needs some work (see TODO) and
an actual glue to the JIT backend.

Original work is LGPL, but per section 3 of this license, I opt for GPL v2
for Basilisk II purposes.
2003-01-31 20:39:53 +00:00
cebix
26f5e92427 read_toc() dumps the entire TOC when DEBUG=1 2003-01-16 18:33:40 +00:00
nigel
f19f18175b Change MIN_HEIGHT, add new one for classic mode 2003-01-10 23:18:02 +00:00
nigel
a0a00b77f5 Corrections for 10.1 (which has a much older autoconf) 2003-01-10 23:16:47 +00:00
nigel
f7e84c7569 Updates for latest (though as yet unreleased) version 2003-01-10 23:12:37 +00:00
nigel
ca5f5e1b01 Make cpuemu[1-8].cpp if a for loop, a few minor corrections 2003-01-10 23:05:06 +00:00
nigel
5a9ec56a21 Extra methods for new Help menu items 2003-01-10 23:01:48 +00:00
nigel
25ea75ff32 Added a few notes on different compilation strategies 2003-01-10 23:00:43 +00:00
gbeauche
43f1cdb401 Sync with changes from cxmon and B2. I have yet to find out why my old
disk image (8.1 based) no longer boots completely. :-/
2003-01-04 12:23:39 +00:00
nigel
1527cac014 10.2 enhancements, eliminated some warnings, added alpha channel mask stuff 2002-12-19 10:40:40 +00:00
nigel
75e3b116a2 Corrected 10.2 problem, add 10.1 compile fix for newer configure.in 2002-12-18 12:13:28 +00:00
nigel
d94d399de8 Better comments about drawing strategies,
new define to specify using the alpha channel
2002-12-18 12:05:48 +00:00
nigel
b7d39be14d [[blah alloc] init] -> [blah new],
error checking when deleting volume files
2002-12-18 11:56:12 +00:00
nigel
3bc22a52d2 [[blah alloc] init] -> [blah new] 2002-12-18 11:54:17 +00:00
nigel
470adec0e6 Allow randomise to work with different drawing strategies 2002-12-18 11:53:11 +00:00
nigel
bfbeb17a96 [[blah alloc] init] becomes [blah new] 2002-12-18 11:50:12 +00:00
nigel
fc8a542d53 JIT 2002-12-18 11:33:37 +00:00
gbeauche
1477b501d1 Add changes from Brian Johnson:
- Update MIPSpro compiler flags
- Only define static variables if they are to be used
- Try to lock the pthreads mutex prior to unlocking/destroying it
2002-11-24 20:07:25 +00:00
gbeauche
3711aa4520 Update ASM_SYM_FOR_FUNC to match x86-64 too, may be useful later. 2002-11-16 15:38:53 +00:00
gbeauche
144e6f4e87 Use old x87 FPU stack on x86-64 too because we now use long doubles there for
better accuracy. Aka. prefer compatibility over speed.
2002-11-16 15:28:25 +00:00
gbeauche
bc5d7f9490 OPTIMIZED_FLAGS for x86-64 with the pushf/pop method since sahf/lahf are
invalid in long mode.
2002-11-05 11:59:12 +00:00