Commit Graph

  • 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
  • 43febf4952 Improve keyboard handling blueswir1 2007-09-21 19:09:35 +00:00
  • 9706285b78 Avoid compilation warnings on 32 bits hosts. j_mayer 2007-09-21 06:32:17 +00:00
  • 928684128e Avoid compilation warnings on 64 bits hosts. j_mayer 2007-09-21 06:09:39 +00:00
  • 2662a059aa More PowerPC definitions, from POWER 2.04 specifications and misc sources. Check that at least instructions set and SPRs are correct for PowerPC 401, 403, 405 and 440 cores. Implement PowerPC 401 MMU model (real-mode only). Improve INSNs and SPRs dump to ease parse with standard shell tools. Add more precise status for most PowerPC cores families. j_mayer 2007-09-21 05:50:37 +00:00
  • a4bb6c3e87 Rework PowerPC 440 TLB management (thanks to Hollis Blanchard) j_mayer 2007-09-21 05:28:33 +00:00
  • 4296f45902 Make CPU hflags be a masked version of the PowerPC MSR. As a side effect, avoid potential bits shadowing in TB flags on 64 bits BookE. j_mayer 2007-09-21 05:23:26 +00:00
  • c068688b03 Extend TB flags to 64 bits (Alexander Graf). j_mayer 2007-09-20 22:47:42 +00:00
  • 5e3b100b65 Change ldl_phys to cpu_physical_memory_read, fix pte address blueswir1 2007-09-20 16:01:51 +00:00
  • d69d2ca9b4 Fix tadd op generation with GCC 4.x blueswir1 2007-09-20 15:21:32 +00:00