isa_traits.hh (8902:75b524b64c28) isa_traits.hh (9022:bb25e7646c41)
1/*
2 * Copyright (c) 2007 The Hewlett-Packard Development Company
3 * All rights reserved.
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

--- 29 unchanged lines hidden (view full) ---

38 */
39
40#ifndef __ARCH_X86_ISATRAITS_HH__
41#define __ARCH_X86_ISATRAITS_HH__
42
43#include "arch/x86/types.hh"
44#include "arch/x86/x86_traits.hh"
45#include "base/types.hh"
1/*
2 * Copyright (c) 2007 The Hewlett-Packard Development Company
3 * All rights reserved.
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

--- 29 unchanged lines hidden (view full) ---

38 */
39
40#ifndef __ARCH_X86_ISATRAITS_HH__
41#define __ARCH_X86_ISATRAITS_HH__
42
43#include "arch/x86/types.hh"
44#include "arch/x86/x86_traits.hh"
45#include "base/types.hh"
46#include "cpu/static_inst_fwd.hh"
47
48namespace LittleEndianGuest {}
49
50namespace X86ISA
51{
52 //This makes sure the little endian version of certain functions
53 //are used.
54 using namespace LittleEndianGuest;

--- 9 unchanged lines hidden (view full) ---

64 const int LogVMPageSize = 12;
65 const int VMPageSize = (1 << LogVMPageSize);
66
67 const int PageShift = 12;
68 const int PageBytes = 1ULL << PageShift;
69
70 const int BranchPredAddrShiftAmt = 0;
71
46
47namespace LittleEndianGuest {}
48
49namespace X86ISA
50{
51 //This makes sure the little endian version of certain functions
52 //are used.
53 using namespace LittleEndianGuest;

--- 9 unchanged lines hidden (view full) ---

63 const int LogVMPageSize = 12;
64 const int VMPageSize = (1 << LogVMPageSize);
65
66 const int PageShift = 12;
67 const int PageBytes = 1ULL << PageShift;
68
69 const int BranchPredAddrShiftAmt = 0;
70
72 StaticInstPtr decodeInst(ExtMachInst);
73
74 // Memory accesses can be unaligned
75 const bool HasUnalignedMemAcc = true;
76
77 const ExtMachInst NoopMachInst = {
78 0x0, // No legacy prefixes.
79 0x0, // No rex prefix.
80 { 1, 0x0, 0x0, 0x90 }, // One opcode byte, 0x90.
81 0x0, 0x0, // No modrm or sib.
82 0, 0, // No immediate or displacement.
83 8, 8, 8, // All sizes are 8.
84 0, // Displacement size is 0.
85 SixtyFourBitMode // Behave as if we're in 64 bit
86 // mode (this doesn't actually matter).
87 };
88}
89
90#endif // __ARCH_X86_ISATRAITS_HH__
71 // Memory accesses can be unaligned
72 const bool HasUnalignedMemAcc = true;
73
74 const ExtMachInst NoopMachInst = {
75 0x0, // No legacy prefixes.
76 0x0, // No rex prefix.
77 { 1, 0x0, 0x0, 0x90 }, // One opcode byte, 0x90.
78 0x0, 0x0, // No modrm or sib.
79 0, 0, // No immediate or displacement.
80 8, 8, 8, // All sizes are 8.
81 0, // Displacement size is 0.
82 SixtyFourBitMode // Behave as if we're in 64 bit
83 // mode (this doesn't actually matter).
84 };
85}
86
87#endif // __ARCH_X86_ISATRAITS_HH__