j_mayer
1cc8e6f067
We must reset the PowerPC CPU _after_ registering it, as hardware reset
...
effect is implementation dependant.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3323 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-04 01:54:44 +00:00
j_mayer
56ba31ff0b
Fix missing case in the new PowerPC exception model.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3294 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-30 15:15:18 +00:00
ths
a5b85f7959
Fix mmap to handle differing host/target page sizes, by Edgar E. Iglesias.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3291 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-30 14:32:45 +00:00
ths
0574b6fb10
Add get_sp_from_cpustate implementation.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3290 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-30 13:49:22 +00:00
ths
540635ba65
Code provision for n32/n64 mips userland emulation. Not functional yet.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3284 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-30 01:58:33 +00:00
j_mayer
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.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3277 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-30 00:38:38 +00:00
j_mayer
8bb1f9c51c
Provision for x86_64-linux-user target: needs get_sp_from_cpustate
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3262 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-29 13:12:58 +00:00
j_mayer
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.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3261 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-29 13:06:16 +00:00
ths
df0d373665
Build fix, ppc64 needs also a get_sp_from_cpustate function now.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3254 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-28 18:45:59 +00:00
ths
198a74de4c
Move get_sp_from_cpustate from cpu.h to target_signal.h.
...
Enable sigaltstack processing for more architectures.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3253 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-27 16:44:32 +00:00
ths
a04e134ad1
linux-user sigaltstack() syscall, by Thayne Harbaugh.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3252 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-27 13:57:58 +00:00
j_mayer
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.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3249 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-27 04:10:43 +00:00
j_mayer
92a343da3f
New ppc64-linux-user target.
...
Allow use of PowerPC 970 for debugging (softmmu would not run, for now).
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3246 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-27 01:14:15 +00:00
j_mayer
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.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3244 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-26 23:54:22 +00:00
j_mayer
324071035f
Convert syscall arguments and return value from long to int or target_long.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3241 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-26 23:01:49 +00:00
ths
9007f0ef73
linux-user utimensat() syscall, by Thayne Harbaugh.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3240 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-25 17:50:37 +00:00
ths
b51eaa8218
Check if the hosts defines a symlinkat syscall.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3236 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-25 16:09:22 +00:00
ths
92a34c10b5
linux-user faccessat() syscall, by Thayne Harbaugh.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3227 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-24 09:27:49 +00:00
ths
814d79771f
linux-user fchmodat() syscall, by Thayne Harbaugh.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3226 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-24 09:26:51 +00:00
ths
5e0ccb18da
linux-user readlinkat() syscall, by Thayne Harbaugh.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3225 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-24 09:26:10 +00:00
ths
f0b6243d5d
linux-user symlinkat() syscall, by Thayne Harbaugh.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3224 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-24 09:25:40 +00:00
ths
64f0ce4c0d
linux-user linkat() syscall, by Thayne Harbaugh.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3223 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-24 09:25:06 +00:00
ths
722183f69b
linux-user renameat() syscall, by Thayne Harbaugh.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3222 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-24 09:24:37 +00:00
ths
8170f56baf
linux-user unlinkat() syscall, by Thayne Harbaugh.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3221 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-24 09:24:11 +00:00
ths
ccfa72b7da
linux-user fchownat() syscall, by Thayne Harbaugh.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3220 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-24 09:23:34 +00:00
ths
75ac37a09b
linux-user mknodat() syscall, by Thayne Harbaugh.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3219 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-24 09:23:05 +00:00
ths
4472ad0dbd
linux-user mkdirat() syscall, by Thayne Harbaugh.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3218 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-24 09:22:32 +00:00
ths
8242483226
linux-user openat() syscall, by Thayne Harbaugh.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3217 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-24 09:21:55 +00:00
ths
8dd77cca03
Update Linux kernel syscall list.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3216 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-24 00:11:26 +00:00
ths
f05d35d26d
Sync termbits.h with current Linux kernel.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3215 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-23 23:27:46 +00:00
ths
b9a02beda2
Add new MIPS/Linux syscalls.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3214 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-23 18:07:05 +00:00
ths
2601c356b7
Correct and update mips termbits.h.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3213 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-23 17:55:00 +00:00
j_mayer
7ec93196fa
Fix invalid MAP_xxx flags for PowerPC targets.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3184 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-18 21:54:57 +00:00
ths
3b46e62427
find -type f | xargs sed -i 's/[\t ]*$//g' # Yes, again. Note the star in the regex.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3177 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-17 08:09:54 +00:00
ths
3ae4320275
Add some missing checks for host syscalls.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3174 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-16 21:39:48 +00:00
ths
5fafdf24ef
find -type f | xargs sed -i 's/[\t ]$//g' # on most files
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3173 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-16 21:08:06 +00:00
ths
ead9360e2f
Partial support for 34K multithreading, not functional yet.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3156 c046a42c-6fe2-441c-8c8c-71466251a162
2007-09-06 00:18:15 +00:00
ths
b7fe5db7e5
Restore build on older Linux hosts.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3084 c046a42c-6fe2-441c-8c8c-71466251a162
2007-07-23 15:37:46 +00:00
ths
4ce6f8de1a
Fix statfs(64) syscall wrapper, by Andreas Schwab.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3082 c046a42c-6fe2-441c-8c8c-71466251a162
2007-07-20 15:54:27 +00:00
ths
4cae1d1639
Tkill support, by Stuart Anderson.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3078 c046a42c-6fe2-441c-8c8c-71466251a162
2007-07-12 11:06:53 +00:00
ths
7f7f7c8463
Sigio fd passing, by Alexander Graf.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3077 c046a42c-6fe2-441c-8c8c-71466251a162
2007-07-12 11:02:46 +00:00
ths
fe8f096b16
Spelling fix, by Stuart Brady.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3076 c046a42c-6fe2-441c-8c8c-71466251a162
2007-07-12 10:59:21 +00:00
ths
aa1f17c18d
Spelling fixes, by Stefan Weil.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3066 c046a42c-6fe2-441c-8c8c-71466251a162
2007-07-11 22:48:58 +00:00
blueswir1
1b8dd648bd
Fix Sparc64 stat system call
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3053 c046a42c-6fe2-441c-8c8c-71466251a162
2007-07-08 10:08:24 +00:00
blueswir1
7f84a7291b
Deliver page faults to program
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3049 c046a42c-6fe2-441c-8c8c-71466251a162
2007-07-07 20:46:41 +00:00
blueswir1
4c1de73d15
Page align brk result like real Linux
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3048 c046a42c-6fe2-441c-8c8c-71466251a162
2007-07-07 20:45:44 +00:00
blueswir1
0774bed180
Fix 64 bit ELF file symbol lookup
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3046 c046a42c-6fe2-441c-8c8c-71466251a162
2007-07-05 13:23:29 +00:00
ths
403f14ef1e
Fix environ termination, by Andreas Schwab.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3027 c046a42c-6fe2-441c-8c8c-71466251a162
2007-06-27 11:12:42 +00:00
ths
6db45e6519
Use correct data structures for stat syscalls, by Magnus Damm.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3001 c046a42c-6fe2-441c-8c8c-71466251a162
2007-06-22 10:15:10 +00:00
ths
072ae847f9
Setup stack properly, fixes wrong argc value problem, by Magnus Damm.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3000 c046a42c-6fe2-441c-8c8c-71466251a162
2007-06-22 10:13:51 +00:00