1
0
mirror of https://github.com/TomHarte/CLK.git synced 2024-12-12 08:30:05 +00:00
CLK/InstructionSets/x86/Model.hpp

28 lines
486 B
C++
Raw Normal View History

//
// Model.hpp
// Clock Signal
//
// Created by Thomas Harte on 27/02/2022.
// Copyright © 2022 Thomas Harte. All rights reserved.
//
#pragma once
#include <cstdint>
2023-05-10 21:02:18 +00:00
namespace InstructionSet::x86 {
enum class Model {
i8086,
i80186,
i80286,
i80386,
};
2024-12-01 22:51:20 +00:00
static constexpr bool is_32bit(const Model model) { return model >= Model::i80386; }
template <bool is_32bit> struct AddressT { using type = uint16_t; };
template <> struct AddressT<true> { using type = uint32_t; };
}