summaryrefslogtreecommitdiff
path: root/arch/alpha
diff options
context:
space:
mode:
authorNathan Binkert <binkertn@umich.edu>2005-06-04 14:16:04 -0400
committerNathan Binkert <binkertn@umich.edu>2005-06-04 14:16:04 -0400
commit6b6445eeb92e9ef40e08348691c47aa3153c088d (patch)
treef4869517321bb95c1cbd39b9868e860f5524dd78 /arch/alpha
parent372b5e706ce8258cdcf68825901f2d5f2f2ee87e (diff)
downloadgem5-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.cc53
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.