diff options
author | Nathan Binkert <binkertn@umich.edu> | 2005-06-04 14:16:04 -0400 |
---|---|---|
committer | Nathan Binkert <binkertn@umich.edu> | 2005-06-04 14:16:04 -0400 |
commit | 6b6445eeb92e9ef40e08348691c47aa3153c088d (patch) | |
tree | f4869517321bb95c1cbd39b9868e860f5524dd78 /arch/alpha | |
parent | 372b5e706ce8258cdcf68825901f2d5f2f2ee87e (diff) | |
download | gem5-6b6445eeb92e9ef40e08348691c47aa3153c088d.tar.xz |
more portable
arch/alpha/alpha_tru64_process.cc:
Sort #includes
Make code more portable. g++ doesn't seem to always like
struct ::stat (and others). So, we typedef stat outside of
the namespace as something else and use the typedef
base/hostinfo.cc:
use snprintf to quell warning
base/inifile.cc:
use strncpy to quell warning
base/stats/events.cc:
don't use strcpy
cpu/beta_cpu/btb.cc:
use FloorLog2 instead of log2
cpu/beta_cpu/comm.hh:
cpu/beta_cpu/inst_queue.hh:
cpu/beta_cpu/sat_counter.hh:
use sim/host.hh instead of stdint.h
--HG--
extra : convert_revision : 59bd9235dda74e72a8b6a70b3f3a981840384f3f
Diffstat (limited to 'arch/alpha')
-rw-r--r-- | arch/alpha/alpha_tru64_process.cc | 53 |
1 files changed, 32 insertions, 21 deletions
diff --git a/arch/alpha/alpha_tru64_process.cc b/arch/alpha/alpha_tru64_process.cc index 6fe4290e8..4d73e711f 100644 --- a/arch/alpha/alpha_tru64_process.cc +++ b/arch/alpha/alpha_tru64_process.cc @@ -26,32 +26,39 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include <errno.h> -#include <unistd.h> -#include <fcntl.h> // for host open() flags #include <sys/types.h> #include <sys/stat.h> +#if defined(__OpenBSD__) +#include <sys/param.h> +#include <sys/mount.h> +#else #include <sys/statfs.h> -#include <string.h> // for memset() +#endif + #include <dirent.h> +#include <errno.h> +#include <fcntl.h> // for host open() flags +#include <string.h> // for memset() +#include <unistd.h> -#include "sim/host.hh" +#include "arch/alpha/alpha_common_syscall_emul.hh" +#include "arch/alpha/alpha_tru64_process.hh" +#include "base/trace.hh" #include "cpu/base_cpu.hh" -#include "mem/functional_mem/functional_memory.hh" -#include "sim/process.hh" #include "cpu/exec_context.hh" +#include "mem/functional_mem/functional_memory.hh" #include "sim/fake_syscall.hh" - -#include "arch/alpha/alpha_common_syscall_emul.hh" -#include "arch/alpha/alpha_tru64_process.hh" - +#include "sim/host.hh" +#include "sim/process.hh" +#include "sim/root.hh" #include "sim/syscall_emul.hh" -#include "sim/root.hh" // for curTick & ticksPerSecond - -#include "base/trace.hh" using namespace std; +typedef struct stat global_stat; +typedef struct statfs global_statfs; +typedef struct dirent global_dirent; + /// /// This class encapsulates the types, structures, constants, /// functions, and syscall-number mappings specific to the Alpha Tru64 @@ -530,7 +537,7 @@ class Tru64 { /// memory space. Used by stat(), fstat(), and lstat(). template <class T> static void - copyOutStatBuf(FunctionalMemory *mem, Addr addr, struct ::stat *host) + copyOutStatBuf(FunctionalMemory *mem, Addr addr, global_stat *host) { TypedBufferArg<T> tgt(addr); @@ -556,11 +563,15 @@ class Tru64 { /// memory space. Used by statfs() and fstatfs(). template <class T> static void - copyOutStatfsBuf(FunctionalMemory *mem, Addr addr, struct ::statfs *host) + copyOutStatfsBuf(FunctionalMemory *mem, Addr addr, global_statfs *host) { TypedBufferArg<T> tgt(addr); +#if defined(__OpenBSD__) + tgt->f_type = 0; +#else tgt->f_type = host->f_type; +#endif tgt->f_bsize = host->f_bsize; tgt->f_blocks = host->f_blocks; tgt->f_bfree = host->f_bfree; @@ -575,13 +586,13 @@ class Tru64 { class F64 { public: static void copyOutStatBuf(FunctionalMemory *mem, Addr addr, - struct ::stat *host) + global_stat *host) { Tru64::copyOutStatBuf<Tru64::F64_stat>(mem, addr, host); } static void copyOutStatfsBuf(FunctionalMemory *mem, Addr addr, - struct ::statfs *host) + global_statfs *host) { Tru64::copyOutStatfsBuf<Tru64::F64_statfs>(mem, addr, host); } @@ -590,13 +601,13 @@ class Tru64 { class PreF64 { public: static void copyOutStatBuf(FunctionalMemory *mem, Addr addr, - struct ::stat *host) + global_stat *host) { Tru64::copyOutStatBuf<Tru64::pre_F64_stat>(mem, addr, host); } static void copyOutStatfsBuf(FunctionalMemory *mem, Addr addr, - struct ::statfs *host) + global_statfs *host) { Tru64::copyOutStatfsBuf<Tru64::pre_F64_statfs>(mem, addr, host); } @@ -826,7 +837,7 @@ class Tru64 { char *host_buf_ptr = host_buf; char *host_buf_end = host_buf + host_result; while (host_buf_ptr < host_buf_end) { - struct ::dirent *host_dp = (struct ::dirent *)host_buf_ptr; + global_dirent *host_dp = (global_dirent *)host_buf_ptr; int namelen = strlen(host_dp->d_name); // Actual size includes padded string rounded up for alignment. |