/*
* Copyright (c) 2006 The Regents of The University of Michigan
+ * Copyright (c) 2017 The University of Virginia
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
*
* Authors: Gabe Black
* Ali Saidi
+ * Alec Roelke
*/
#ifndef __RISCV_PROCESS_HH__
protected:
RiscvProcess(ProcessParams * params, ObjectFile *objFile);
- void initState();
+ void initState() override;
template<class IntType>
void argsInit(int pageSize);
public:
- RiscvISA::IntReg getSyscallArg(ThreadContext *tc, int &i);
+ RiscvISA::IntReg getSyscallArg(ThreadContext *tc, int &i) override;
/// Explicitly import the otherwise hidden getSyscallArg
using Process::getSyscallArg;
- void setSyscallArg(ThreadContext *tc, int i, RiscvISA::IntReg val);
- void setSyscallReturn(ThreadContext *tc, SyscallReturn return_value);
+ void setSyscallArg(ThreadContext *tc, int i,
+ RiscvISA::IntReg val) override;
+ void setSyscallReturn(ThreadContext *tc,
+ SyscallReturn return_value) override;
+
+ virtual bool mmapGrowsDown() const override { return false; }
};
/* No architectural page table defined for this ISA */