Commit Graph

877 Commits

Author SHA1 Message Date
gbeauche
b765112cf9 Get rid of any "extern inline" bits. Use static inline instead as MIPS
compilers don't really like the former syntax.
2002-09-19 15:42:16 +00:00
gbeauche
ecd3db832e - Rewrite raw_init_cpu() to match more details, from kernel sources.
- Add possibility to tune code alignment to the underlying processor. However,
  this is turned off as I don't see much improvement and align_jumps = 64
  for Athlon looks suspicious to me.
- Remove two extra align_target() that are already covered.
- Remove unused may_trap() predicate.
2002-09-19 14:59:03 +00:00
gbeauche
feca66d43e Optimize runtime assembler with shorter equivalents when the accumulator
(%eax) is referenced along with immediates.
2002-09-18 15:56:17 +00:00
gbeauche
f2a9938685 Ensure the IEEE fpu core is used when building the JIT compiler 2002-09-18 13:06:49 +00:00
gbeauche
54ac7a1493 Move -DSAHF_SETO_PROFITABLE down in x86 & gas specific block. Also ensure
SAHF_SETO_PROFITABLE is defined when compiling the JIT. Aka I don't want
to support obsolete and probably bogus code nowadays.
2002-09-18 11:41:56 +00:00
gbeauche
e268a5a072 Define SAHF_SETO_PROFITABLE on x86, aka restore full performance of the
JIT compiler. ;-) BTW, also fixes some valgrind warnings.
2002-09-18 10:25:05 +00:00
gbeauche
c40279294a Don't forget to use vm_realease() to free up translation cache. Also free
the right amount of memory that was previously allocated.
2002-09-18 09:55:37 +00:00
gbeauche
599f7e845f Use vm_acquire() to allocate translation cache 2002-09-18 07:50:55 +00:00
gbeauche
5df172aa53 Additions for the JIT compiler opcode translators + NOFLAGS variant of
regular instruction handlers.
2002-09-17 16:09:25 +00:00
gbeauche
8c7254e4c8 Additions for the JIT compiler (--enable-jit-compiler, --enable-jit-debug) 2002-09-17 16:08:41 +00:00
gbeauche
6f3a214a15 Make FlushCodeRange aware of the JIT compiler's flush_icache() 2002-09-17 16:08:07 +00:00
gbeauche
0b001e81a5 Additional string defs for JIT-specific options 2002-09-17 16:07:21 +00:00
gbeauche
ea8bdf1941 Update prefs editor with "JIT Compiler" pane 2002-09-17 16:06:37 +00:00
gbeauche
4fc127c8df - Changes to support 68040 -> x86 dynamic translator
- Globalize FLIGHT_RECORDER, possibly used in compiler/ sources as well
2002-09-17 16:05:39 +00:00
gbeauche
c0526db089 Import JIT compiler 2002-09-17 16:04:06 +00:00
gbeauche
ba346aa0d2 Check for for C99 math functions in the form *l() 2002-09-16 15:40:48 +00:00
gbeauche
6af88bc787 Only use *l() math functions when they are available 2002-09-16 15:40:23 +00:00
gbeauche
ea98d02ce8 Conditionalize use of pthread_mutexattr_setpshared() as this is an optional
POSIX feature from _POSIX_THREAD_PROCESS_SHARED group. Besides, Ulrich Drepper
mentions "the kernel support for this option wasn't available until 2.5.7.
Future versions of the thread library will support this option."
<http://people.redhat.com/drepper/posix-option-groups.html>

BTW, this nukes a warning when build on FreeBSD 4.6
2002-09-16 15:06:24 +00:00
cebix
7c1352a5f7 updated autogen.sh to AutoGen(TM) 8.0 Professional :-) 2002-09-16 14:54:19 +00:00
gbeauche
d16a54362c #include <pthread.h> to get pthread_attr_t definition 2002-09-16 14:48:53 +00:00
gbeauche
a04889fe03 Portability fixes: use a switch to test for ac_cv_c_float_format 2002-09-16 14:17:20 +00:00
gbeauche
a0d72c749b Remove acconfig.h, obsoleted by new autoconf2.5 stuff 2002-09-16 14:10:21 +00:00
gbeauche
b60198fc17 - Moved minium autoconf support to 2.52+
- Add large file support for 2+ GB hard disk images
2002-09-16 13:32:33 +00:00
gbeauche
453c6de0e2 Now use autoconf 2.52+ as it provides nice AC_SYS_LARGEFILE check and a
fixed check for exit() prototype.
2002-09-16 13:29:33 +00:00
gbeauche
5be5714a9e Remove TYPE_SOCKLEN_T check as it was merged in main configure script already. 2002-09-16 13:28:17 +00:00
gbeauche
9cc4185fa2 - Make "ieee" core default, where applicable
- Import gcc configury to determine HOST_FLOAT_FORMAT
2002-09-16 12:03:07 +00:00
gbeauche
48986febc6 - FP endianness is now testing at configure time
- Fix junk introduced in previous rev for extract_extended()
2002-09-16 12:01:38 +00:00
gbeauche
e59e4904d3 Fix "ieee" FPU core on big endian and without long double > double support
- Handle conversions to/from host double for m68k long doubles formats
- Make mathlib aware of sizeof(long double) == sizeof(double) arches
- Attempt to fix FSCALE implementation
2002-09-15 18:21:13 +00:00
gbeauche
57e73de5f6 USE_LONG_DOUBLE guards 2002-09-13 15:06:42 +00:00
gbeauche
dbc92fb334 Updates for new FPU core architecture, add "ieee" core (x86 for now) 2002-09-13 12:51:24 +00:00
gbeauche
a50871f87c Updates for new FPU core architecture 2002-09-13 12:50:56 +00:00
gbeauche
c327eee41b * Basilisk II JIT integration, phase 2:
- Add new FPU core architecture
- Clean fpu_x86_asm.h as it is no longer automatically generated
2002-09-13 12:50:40 +00:00
gbeauche
d3bda319a8 Use B2_mutex instead of pthread mutexes when ENABLE_EXCLUSIVE_SPCFLAGS is
set. However, this is not used at the moment. Is there an advantage? People
may want to add arch-optimized SPCFLAGS_{SET,CLEAR}.
2002-09-01 16:32:02 +00:00
gbeauche
7972082c56 - Merge with Basilisk II/JIT cpu core, interpretive part for now
- Clean use of USE_PREFETCH_BUFFER macro and dependent bits
2002-09-01 15:17:13 +00:00
cebix
4f8d06b671 - implemented direct SCSI transfers (bypassing the buffer)
- minor fixes
2002-09-01 12:01:46 +00:00
cebix
3d2bac9f15 - it is now possible to make the serial drivers pipe their input/output
to programs by using a '|' followed by a command line as the modem or
  printer port setting (instead of a device name like '/dev/ttyS0')
  [Brian Johnson]
- the option "--config FILE" tells B2 to use a different config file
2002-07-31 16:46:14 +00:00
cebix
586d299bfc fixes by Steven N. Hirsch (versioned symbols, module license) 2002-07-23 18:02:47 +00:00
gbeauche
281460fba0 - New arch support for IP retrieval on SIGSEGV. 2002-07-17 06:51:05 +00:00
nigel
370d5dcb95 Updated for latest Controller and EmulatorView class methods 2002-07-02 10:23:39 +00:00
nigel
5ef6d3d08c Compatibility with latest C++ monitor object. Unfortunately this requires
a terrible hack to guess the number of bytes per row for each mode, which
is terribly hardware dependant, but is the only way at the moment.
2002-07-02 09:47:57 +00:00
gbeauche
69847c3ea2 Correctly guard FreeBSD bits 2002-06-27 14:28:59 +00:00
jlachmann
abcf74039d Adapted to OO video scheme; Audio volume/muting/sample rate now settable 2002-06-23 08:27:05 +00:00
nigel
ca896c0838 Better mouse event control for full screen mode 2002-06-05 10:18:51 +00:00
nigel
15baaf886a Sequencing changes in init_screen(), removed some global vars and functions,
assorted tidyup, big changes to video_switch_to_mode()
2002-06-05 10:11:40 +00:00
nigel
2880cf6251 Debug statements were not in D() macros 2002-06-05 09:41:27 +00:00
nigel
3319c41d9d Un-necessary function and global int 2002-06-02 12:20:38 +00:00
nigel
f2749d2222 Hanging after minimising icon no longer relevant (I don't minimise anymore).
Replaced with "fullscreen cursor jump" error.
2002-06-02 10:26:55 +00:00
nigel
fdac401a5a Sheet and fullscreen-safe input processing, small tidyup 2002-05-30 12:50:21 +00:00
nigel
3053defd16 New way of storing if emulator is in full screen mode 2002-05-30 12:46:15 +00:00
nigel
3b2c66602f Removed duplicate modes, new way of checking fullscreen mode, use sheets
instead of panels for warnings & errors
2002-05-30 12:43:32 +00:00