diff options
Diffstat (limited to 'src/sim')
-rw-r--r-- | src/sim/SConscript | 1 | ||||
-rw-r--r-- | src/sim/aux_vector.cc | 95 | ||||
-rw-r--r-- | src/sim/aux_vector.hh | 26 |
3 files changed, 12 insertions, 110 deletions
diff --git a/src/sim/SConscript b/src/sim/SConscript index 8ab2c72f9..72b0f3df9 100644 --- a/src/sim/SConscript +++ b/src/sim/SConscript @@ -80,7 +80,6 @@ Source('mathexpr.cc') if env['TARGET_ISA'] != 'null': SimObject('InstTracer.py') SimObject('Process.py') - Source('aux_vector.cc') Source('faults.cc') Source('process.cc') Source('fd_array.cc') diff --git a/src/sim/aux_vector.cc b/src/sim/aux_vector.cc deleted file mode 100644 index 18834ac9b..000000000 --- a/src/sim/aux_vector.cc +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Copyright (c) 2016 Advanced Micro Devices, Inc. - * All rights reserved. - * - * For use for simulation and test purposes only - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * 1. Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * - * 3. Neither the name of the copyright holder nor the names of its - * contributors may be used to endorse or promote products derived from this - * software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - * - * Authors: Brandon Potter - */ - -#include "sim/aux_vector.hh" - -#include <inttypes.h> - -#include "config/the_isa.hh" - -#if THE_ISA == ALPHA_ISA -#include "arch/alpha/linux/process.hh" - -#elif THE_ISA == SPARC_ISA -#include "arch/sparc/linux/process.hh" -#include "arch/sparc/solaris/process.hh" - -#elif THE_ISA == MIPS_ISA -#include "arch/mips/linux/process.hh" - -#elif THE_ISA == ARM_ISA -#include "arch/arm/freebsd/process.hh" -#include "arch/arm/linux/process.hh" - -#elif THE_ISA == X86_ISA -#include "arch/x86/linux/process.hh" - -#elif THE_ISA == RISCV_ISA -#include "arch/riscv/linux/process.hh" - -#elif THE_ISA == POWER_ISA -#include "arch/power/linux/process.hh" - -#else -#error "THE_ISA not set" -#endif - -#include "arch/isa_traits.hh" -#include "sim/byteswap.hh" - -template<class IntType> -AuxVector<IntType>::AuxVector(IntType type, IntType val) - : _auxType(TheISA::htog(type)), _auxVal(TheISA::htog(val)), - _auxHostType(type), _auxHostVal(val) -{ } - -template<class IntType> -inline void -AuxVector<IntType>::setAuxType(IntType type) -{ - _auxType = TheISA::htog(type); - _auxHostType = type; -} - -template<class IntType> -inline void -AuxVector<IntType>::setAuxVal(IntType val) -{ - _auxVal = TheISA::htog(val); - _auxHostVal = val; -} - -template class AuxVector<uint32_t>; -template class AuxVector<uint64_t>; diff --git a/src/sim/aux_vector.hh b/src/sim/aux_vector.hh index 1ca2d7862..00412fd82 100644 --- a/src/sim/aux_vector.hh +++ b/src/sim/aux_vector.hh @@ -41,23 +41,21 @@ class AuxVector { public: AuxVector() = default; - AuxVector(IntType type, IntType val); + AuxVector(IntType _type, IntType _val) : type(_type), val(_val) {} - IntType const& getAuxType() const { return _auxType; } - IntType const& getAuxVal() const { return _auxVal; } - IntType const& getHostAuxType() const { return _auxHostType; } - IntType const& getHostAuxVal() const { return _auxHostVal; } - - void setAuxType(IntType type); - void setAuxVal(IntType val); - - private: - IntType _auxType = 0; - IntType _auxVal = 0; - IntType _auxHostType = 0; - IntType _auxHostVal = 0; + IntType type = 0; + IntType val = 0; }; +template<class IntType> +inline AuxVector<IntType> +swap_byte(AuxVector<IntType> av) +{ + av.type = swap_byte(av.type); + av.val = swap_byte(av.val); + return av; +} + enum AuxiliaryVectorType { M5_AT_NULL = 0, // End of vector. M5_AT_IGNORE = 1, // Ignored. |