Commit Graph

  • b48d7d697f Compilation fix (forgotten patch). j_mayer 2007-10-01 02:55:07 +00:00
  • 5356c7b5a6 Remove definitions for deprecated SLB & TLB related op helpers. j_mayer 2007-10-01 01:59:12 +00:00
  • daf4f96ece Avoid op helpers that would just call helpers for TLB & SLB management: call the helpers directly from the micro-ops. Avoid duplicated code for tlbsx. implementation. j_mayer 2007-10-01 01:51:12 +00:00
  • 035feb8857 Share more SPR instanciations between all PowerPC 401 incarnations. Add comments about some unimplemented storage control dedicated SPRs. j_mayer 2007-10-01 01:38:03 +00:00
  • 6f5d427d58 Implement embedded PowerPC exceptions prefix and vectors registers. j_mayer 2007-10-01 01:32:49 +00:00
  • 4e290a0b71 Share input pins and internal interrupt controller between all PowerPC 40x. Fix critical input interrupt generation. j_mayer 2007-10-01 01:27:10 +00:00
  • 3391c81801 Fix Sparc64 ldfa, lddfa, stfa, and stdfa instructions blueswir1 2007-09-30 19:38:12 +00:00
  • ee0b03fd85 Fix Sparc64 wrasr instructions blueswir1 2007-09-30 16:37:00 +00:00
  • a902d88664 Fix (once again) PowerPC sync weight field. j_mayer 2007-09-30 15:21:15 +00:00
  • 1e6784f960 Fix PowerPC TLB miss dump code. j_mayer 2007-09-30 15:19:48 +00:00
  • 56ba31ff0b Fix missing case in the new PowerPC exception model. j_mayer 2007-09-30 15:15:18 +00:00
  • 068abdc8a5 Fix inconsistent end conditions in ppc_find_xxx functions. (crash reported by Andreas Farber when using default CPU). j_mayer 2007-09-30 14:52:08 +00:00
  • 8a84de23b8 Fix compilation on Darwin platform, avoiding the use of gcc function attributes (problem reported by Andreas Farber). : ---------------------------------------------------------------------- j_mayer 2007-09-30 14:44:52 +00:00
  • a5b85f7959 Fix mmap to handle differing host/target page sizes, by Edgar E. Iglesias. ths 2007-09-30 14:32:45 +00:00
  • 0574b6fb10 Add get_sp_from_cpustate implementation. ths 2007-09-30 13:49:22 +00:00
  • be147d0879 * Update OEA environment, following the PowerPC 2.04 specification: - New mtmsr/mtmsrd form that just update RI and EE bits - New hrfid, lq and stq instructions - Add support for supervisor and hypervisor modes process priority update - Code provision for hypervisor SPR accesses * Actually implement the wait instruction * Bugfixes (missing RETURN in micro-op / missing #ifdef) j_mayer 2007-09-30 13:03:23 +00:00
  • b0566f4f45 Support UltraVNC clients, by Eduardo Felipe. ths 2007-09-30 13:01:15 +00:00
  • 0db1b20e47 Synchronize with latest PowerPC ISA VEA: * fix invalid instructions bits masks * new wait instruction * more comments about effect of cache instructions on the MMU j_mayer 2007-09-30 03:46:38 +00:00
  • 1548b15d23 Add mipsn32{,el}-linux-user. ths 2007-09-30 02:14:03 +00:00
  • cf575356bf Remove unused variable. ths 2007-09-30 02:10:37 +00:00
  • 540635ba65 Code provision for n32/n64 mips userland emulation. Not functional yet. ths 2007-09-30 01:58:33 +00:00
  • 868d585ace Avoid crash on NULL timers. This is a rework of Stefan Weil proposed patch. j_mayer 2007-09-30 01:29:07 +00:00
  • c80f84e3c0 Implement Process Priority Register as defined in the PowerPC 2.04 spec. j_mayer 2007-09-30 01:18:26 +00:00
  • d7e4b87e53 Implement new floating-point instructions (fre, frin, friz, frip, frim) as defined in the PowerPC 2.04 specification. j_mayer 2007-09-30 01:11:48 +00:00
  • 477023a603 Improve single-precision floats load & stores: as the PowerPC registers only store double-precision floats, use float64_to_float32 & float32_to_float64 to do the appropriate conversion. Implement stfiwx. j_mayer 2007-09-30 01:01:08 +00:00
  • bfa1e5cf0a XER is to be treated as a 64 bits register on 64 bits implementations, according to the PowerPC 2.04 specification. j_mayer 2007-09-30 00:50:23 +00:00
  • a09d88b86a Update TODO. ths 2007-09-30 00:45:51 +00:00
  • a062e36c58 Implement the PowerPC alternate time-base, following the 2.04 specification. Share most code with the time-base management routines. Remove time-base write routines from user-mode emulation environments. j_mayer 2007-09-30 00:38:38 +00:00
  • 4887d78b01 Don't hardcode the host architecture name. ths 2007-09-29 21:22:33 +00:00
  • ff1aaf65e7 Update tarbin rule. ths 2007-09-29 21:18:26 +00:00
  • 8915ee7414 Enable sh4-softmmu and sh4-linux-user builds by default, by Magnus Damm. ths 2007-09-29 19:55:21 +00:00
  • c5e814b271 Fix rte opcode, by Magnus Damm. ths 2007-09-29 19:52:22 +00:00
  • ed8e0a4d4b Add FRQCR read support, by Magnus Damm. ths 2007-09-29 19:51:40 +00:00
  • 3464c58998 Add INTC controller prototype, by Magnus Damm. ths 2007-09-29 19:47:44 +00:00
  • 2f062c7227 Stand-alone SCI/SCIF emulation code, by Magnus Damm. ths 2007-09-29 19:43:54 +00:00
  • cd1a3f6840 Stand-alone TMU emulation code, by Magnus Damm. ths 2007-09-29 19:40:09 +00:00
  • 0d78f544de Add R2D-PLUS support, by Magnus Damm. ths 2007-09-29 19:24:41 +00:00
  • 671880e651 Supervisor mode implementation, by Aurelien Jarno. ths 2007-09-29 19:21:36 +00:00
  • 544540979c Less magic constants. ths 2007-09-29 19:19:59 +00:00
  • dee96f6ca3 PowerPC emulation optimization: avoid stopping translation after most SPR updates when a context-synchronization instruction is also needed. j_mayer 2007-09-29 15:02:38 +00:00
  • 58a7d32872 Code provision for hypervisor timers resources, as described in PowerPC 2.04 specification. j_mayer 2007-09-29 13:21:37 +00:00
  • 47c4d8f06b Fix PowerPC target objects dependencies j_mayer 2007-09-29 13:20:12 +00:00
  • 8bb1f9c51c Provision for x86_64-linux-user target: needs get_sp_from_cpustate j_mayer 2007-09-29 13:12:58 +00:00
  • e1833e1f96 Rework PowerPC exceptions model to make it more versatile: * don't use exception vectors as the exception number. Use vectors numbers as defined in the PowerPC embedded specification instead and extend this model to cover all emulated PowerPC variants exceptions. * add some missing exceptions definitions, from PowerPC 2.04 specification and actual PowerPC implementations. * add code provision for hypervisor exceptions handling. * define exception vectors and prefix in CPUPPCState to emulate BookE exception vectors without any hacks. * define per CPU model valid exception vectors. * handle all known exceptions in user-mode only emulations. * fix hardware interrupts priorities in most cases. * change RET_EXCP macros name into GEN_EXCP as they don't return. * do not stop translation on most instructions that are not defined as context-synchronizing in PowerPC specification. * fix PowerPC 64 jump targets and link register update when in 32 bits mode. * Fix PowerPC 464 and 464F definitions. j_mayer 2007-09-29 13:06:16 +00:00
  • f93732914e make cpu_abort dump cpu state in logfile, which is useful for debugging. j_mayer 2007-09-29 12:18:20 +00:00
  • 29f640e2cf always_inline gcc directive can be useful. j_mayer 2007-09-29 12:17:25 +00:00
  • f1548daae3 host_utils.o may also be useful for user-mode emulation. j_mayer 2007-09-29 12:15:39 +00:00
  • 237c0af017 Define the proper bfd_mach to be used by the disassembler for each PowerPC emulated CPU. j_mayer 2007-09-29 12:01:46 +00:00
  • d12f4c3822 Change POWERPC_PPC_GENERIC to POWERPC_DEFAULT. Use it as default for workstation targets. Fix PowerPC 750fl and 750gl definitions. j_mayer 2007-09-29 11:51:08 +00:00
  • 418d7c7169 Fix MIPS FP underflow handling, spotted by Daniel Jacobowitz. ths 2007-09-28 19:30:36 +00:00
  • df0d373665 Build fix, ppc64 needs also a get_sp_from_cpustate function now. ths 2007-09-28 18:45:59 +00:00
  • 198a74de4c Move get_sp_from_cpustate from cpu.h to target_signal.h. Enable sigaltstack processing for more architectures. ths 2007-09-27 16:44:32 +00:00
  • a04e134ad1 linux-user sigaltstack() syscall, by Thayne Harbaugh. ths 2007-09-27 13:57:58 +00:00
  • e3b9808535 Build fix for PowerPC hosts, where "PPC" is a predefined macro name. ths 2007-09-27 12:48:11 +00:00
  • e3878283de Implement size bit in PowerPC 64 comparisons. Allow 'weight' field in sync instruction. j_mayer 2007-09-27 04:47:25 +00:00
  • 4118a97030 memset string pages to zero to avoid putting random data on the stack that may make some program crash at startup. Fix unsigned long / target_ulong confusion (more to do). Fix missing g2h macros. j_mayer 2007-09-27 04:10:43 +00:00
  • 526216880d SVM VINTR fix, by Alexander Graf. ths 2007-09-27 01:52:00 +00:00
  • 40d0591e2c Fixes for PowerPC 64 rotate and mask instructions. j_mayer 2007-09-27 01:32:19 +00:00
  • 92a343da3f New ppc64-linux-user target. Allow use of PowerPC 970 for debugging (softmmu would not run, for now). j_mayer 2007-09-27 01:14:15 +00:00
  • b8d3f5d126 Add flags to support PowerPC 405 bootinfos variations. j_mayer 2007-09-26 23:55:31 +00:00
  • a750fc0b91 Great rework and cleanups to ease PowerPC implementations definitions. * cleanup cpu.h, removing definitions used only in translate.c/translate_init.c * add new flags to define instructions sets more precisely * various changes in MMU models definitions * add definitions for PowerPC 440/460 support (insns and SPRs). * add definitions for PowerPC 401/403 and 620 input pins model * Fix definitions for most PowerPC 401, 403, 405, 440, 601, 602, 603 and 7x0 * Preliminary support for PowerPC 74xx (aka G4) without altivec. * Code provision for other PowerPC support (7x5, 970, ...). * New SPR and PVR defined, from PowerPC 2.04 specification and other sources * Misc code bugs, error messages and styles fixes. * Update status files for PowerPC cores support. j_mayer 2007-09-26 23:54:22 +00:00
  • 08fa4bab83 hflags computation cleanup, by Aurelien Jarno. ths 2007-09-26 23:52:06 +00:00
  • fe253235b2 Wrap a few often used tests with unlikely(), by Aurelien Jarno. ths 2007-09-26 23:50:39 +00:00
  • 324071035f Convert syscall arguments and return value from long to int or target_long. j_mayer 2007-09-26 23:01:49 +00:00
  • 9007f0ef73 linux-user utimensat() syscall, by Thayne Harbaugh. ths 2007-09-25 17:50:37 +00:00
  • eb296a0a03 Remove the target dependency introduced by previous patch blueswir1 2007-09-25 17:30:09 +00:00
  • c2efc95d45 Fix monitor expressions blueswir1 2007-09-25 17:28:42 +00:00
  • 42532189df Timer start/stop implementation, by Aurelien Jarno. ths 2007-09-25 16:53:15 +00:00
  • b51eaa8218 Check if the hosts defines a symlinkat syscall. ths 2007-09-25 16:09:22 +00:00
  • 387a8fe505 Optimise instructions accessing CP0, by Aurelien Jarno. ths 2007-09-25 14:49:47 +00:00
  • b570094d9b vvfat mbr fixes, by Ivan Kalvachev. ths 2007-09-25 14:47:03 +00:00
  • b427c72613 Improve completion in monitor, by Pascal Terjan. ths 2007-09-25 14:45:23 +00:00
  • 9ff6755bf9 Move ECC calculation to a more appropriate place. balrog 2007-09-25 01:17:04 +00:00
  • 40ce0a9a8f CPU boot mode blueswir1 2007-09-24 19:44:09 +00:00
  • 9437454a84 Fix loading above 4G blueswir1 2007-09-24 18:41:27 +00:00
  • 7743e58839 Fix >4G physical memory dump for Sparc32 blueswir1 2007-09-24 18:39:04 +00:00
  • e189e74868 Per-CPU instruction decoding implementation, by Aurelien Jarno. ths 2007-09-24 12:48:00 +00:00
  • 92a34c10b5 linux-user faccessat() syscall, by Thayne Harbaugh. ths 2007-09-24 09:27:49 +00:00
  • 814d79771f linux-user fchmodat() syscall, by Thayne Harbaugh. ths 2007-09-24 09:26:51 +00:00
  • 5e0ccb18da linux-user readlinkat() syscall, by Thayne Harbaugh. ths 2007-09-24 09:26:10 +00:00
  • f0b6243d5d linux-user symlinkat() syscall, by Thayne Harbaugh. ths 2007-09-24 09:25:40 +00:00
  • 64f0ce4c0d linux-user linkat() syscall, by Thayne Harbaugh. ths 2007-09-24 09:25:06 +00:00
  • 722183f69b linux-user renameat() syscall, by Thayne Harbaugh. ths 2007-09-24 09:24:37 +00:00
  • 8170f56baf linux-user unlinkat() syscall, by Thayne Harbaugh. ths 2007-09-24 09:24:11 +00:00
  • ccfa72b7da linux-user fchownat() syscall, by Thayne Harbaugh. ths 2007-09-24 09:23:34 +00:00
  • 75ac37a09b linux-user mknodat() syscall, by Thayne Harbaugh. ths 2007-09-24 09:23:05 +00:00
  • 4472ad0dbd linux-user mkdirat() syscall, by Thayne Harbaugh. ths 2007-09-24 09:22:32 +00:00
  • 8242483226 linux-user openat() syscall, by Thayne Harbaugh. ths 2007-09-24 09:21:55 +00:00
  • 8dd77cca03 Update Linux kernel syscall list. ths 2007-09-24 00:11:26 +00:00
  • f05d35d26d Sync termbits.h with current Linux kernel. ths 2007-09-23 23:27:46 +00:00
  • b9a02beda2 Add new MIPS/Linux syscalls. ths 2007-09-23 18:07:05 +00:00
  • 2601c356b7 Correct and update mips termbits.h. ths 2007-09-23 17:55:00 +00:00
  • 2337fdc208 Fix mips usermode emulation. ths 2007-09-23 17:54:29 +00:00
  • 239fbd8623 Add missing svm.h header, and add a Changelog entry. ths 2007-09-23 15:30:28 +00:00
  • 0573fbfc3f SVM Support, by Alexander Graf. ths 2007-09-23 15:28:04 +00:00
  • bbbb2f0af9 Fix Caps lock and Num lock handling blueswir1 2007-09-23 11:48:47 +00:00
  • e32664fbd2 Add missing break statements blueswir1 2007-09-23 11:40:57 +00:00
  • c39e33380f Only build qemu-img with softmmu targets. pbrook 2007-09-22 16:49:14 +00:00
  • 748e49932d Fix breakage on big endian hosts (Aurelien Jarno) blueswir1 2007-09-22 12:09:09 +00:00
  • 81ad8ba242 Rework ASI instructions (Aurelien Jarno) blueswir1 2007-09-21 19:10:53 +00:00