From 95c248c2139ff8d3568e1c92319727777f19920f Mon Sep 17 00:00:00 2001 From: David Oehmke Date: Thu, 5 Feb 2004 12:16:17 -0500 Subject: Modify the emulated system calls to support running the SPEC Int benchmarks for alpha-linux. arch/alpha/alpha_linux_process.cc: Added some more ioctl commands to ignore. Set unlink and rename to the new functions. Ignore setrlimit, times and rt_sigaction. Should eventually provide a function for times. arch/alpha/alpha_tru64_process.cc: Added some more ioctl commands to ignore. Set unlink and rename to the new functions. Ignore setrlimit. sim/syscall_emul.cc: Added implementations for unlink and rename. sim/syscall_emul.hh: Added unlink and rename functions. Added a couple more ioctl requests to ignore. Print out the PC of any ioctl commands that fail. --HG-- extra : convert_revision : 8af21c7fa7d0645d3f9324c9ce70ad33590c3c8e --- sim/syscall_emul.hh | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'sim/syscall_emul.hh') diff --git a/sim/syscall_emul.hh b/sim/syscall_emul.hh index df4038f71..b425ef83c 100644 --- a/sim/syscall_emul.hh +++ b/sim/syscall_emul.hh @@ -191,6 +191,12 @@ int munmapFunc(SyscallDesc *desc, int num, Process *p, ExecContext *xc); /// Target gethostname() handler. int gethostnameFunc(SyscallDesc *desc, int num, Process *p, ExecContext *xc); +/// Target unlink() handler. +int unlinkFunc(SyscallDesc *desc, int num, Process *p, ExecContext *xc); + +/// Target rename() handler. +int renameFunc(SyscallDesc *desc, int num, Process *p, ExecContext *xc); + ////////////////////////////////////////////////////////////////////// // // The following emulation functions are generic, but need to be @@ -223,10 +229,12 @@ ioctlFunc(SyscallDesc *desc, int callnum, Process *process, case OS::TIOCSETN: case OS::TIOCSETC: case OS::TIOCGETC: + case OS::TIOCGETS: + case OS::TIOCGETA: return -ENOTTY; default: - fatal("Unsupported ioctl call: ioctl(%d, 0x%x, ...)\n", fd, req); + fatal("Unsupported ioctl call: ioctl(%d, 0x%x, ...) @ 0x%llx\n", fd, req, xc->readPC()); } } -- cgit v1.2.3