mirror of
https://github.com/TomHarte/CLK.git
synced 2026-01-22 08:26:48 +00:00
Be specific about types.
This commit is contained in:
@@ -369,7 +369,7 @@ public:
|
||||
|
||||
template <typename IntT> IntT in(const uint16_t port) {
|
||||
if constexpr (std::is_same_v<IntT, uint16_t>) {
|
||||
return in<uint8_t>(port) | (in<uint8_t>(port + 1) << 8);
|
||||
return uint16_t(in<uint8_t>(port) | (in<uint8_t>(port + 1) << 8));
|
||||
} else {
|
||||
static_assert(std::is_same_v<IntT, uint8_t>);
|
||||
|
||||
|
||||
@@ -40,7 +40,7 @@ template <InstructionSet::x86::Model model> struct ProgramFetcher {
|
||||
LinearMemory<model> &linear_memory
|
||||
) const {
|
||||
const auto &descriptor = segments.descriptors[InstructionSet::x86::Source::CS];
|
||||
const auto base = descriptor.base() & (linear_memory.MaxAddress - 1);
|
||||
const auto base = uint32_t(descriptor.base() & (linear_memory.MaxAddress - 1));
|
||||
return std::make_pair(
|
||||
linear_memory.at(base),
|
||||
std::min<size_t>(0x1'0000, 1 + descriptor.bounds().end - base)
|
||||
|
||||
Reference in New Issue
Block a user