summaryrefslogtreecommitdiff
path: root/src/arm32/address/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/arm32/address/mod.rs')
-rw-r--r--src/arm32/address/mod.rs89
1 files changed, 0 insertions, 89 deletions
diff --git a/src/arm32/address/mod.rs b/src/arm32/address/mod.rs
deleted file mode 100644
index 067cc20..0000000
--- a/src/arm32/address/mod.rs
+++ /dev/null
@@ -1,89 +0,0 @@
-// Copyright 2021-2024 Gabriel Bjørnager Jensen.
-//
-// This file is part of Pollex.
-//
-// Pollex is free software: you can redistribute it
-// and/or modify it under the terms of the GNU Af-
-// fero General Public License as published by the
-// Free Software Foundation, either version 3 of
-// the License, or (at your option) any later ver-
-// sion.
-//
-// Pollex is distributed in the hope that it will
-// be useful, but WITHOUT ANY WARRANTY; without
-// even the implied warranty of MERCHANTABILITY or
-// FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Affero General Public License for more details.
-//
-// You should have received a copy of the GNU Af-
-// fero General Public License along with Pollex.
-// If not, see <https://www.gnu.org/licenses/>.
-
-use crate::arm32::Register;
-
-use core::fmt::Display;
-
-/// An addressing mode.
-pub enum Address {
- ArithmeticShiftRightImmediate { source: Register, shift: u32 },
-
- ArithmeticShiftRightRegister { source: Register, shift: Register },
-
- Immediage { immediate: u32 },
-
- LogicalShiftLeftImmediate { source: Register, shift: u32 },
-
- LogicalShiftLeftRegister { source: Register, shift: Register },
-
- LogicalShiftRightImmediate { source: Register, shift: u32 },
-
- LogicalShiftRightRegister { source: Register, shift: Register },
-
- RotateRightExtend { source: Register },
-
- RotateRightRegister { source: Register, shift: Register },
-}
-
-impl Display for Address {
- fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
- use Address::*;
-
- match *self {
- ArithmeticShiftRightImmediate { source, shift } => {
- write!(f, "{source}, ASR #{shift}")
- },
-
- ArithmeticShiftRightRegister { source, shift } => {
- write!(f, "{source}, ASR {shift}")
- },
-
- Immediage { immediate } => {
- write!(f, "#{immediate}<")
- },
-
- LogicalShiftLeftImmediate { source, shift } => {
- write!(f, "{source}, LSL #{shift}")
- },
-
- LogicalShiftLeftRegister { source, shift } => {
- write!(f, "{source}, LSL {shift}")
- },
-
- LogicalShiftRightImmediate { source, shift } => {
- write!(f, "{source}, LSR #{shift}")
- },
-
- LogicalShiftRightRegister { source, shift } => {
- write!(f, "{source}, LSR {shift}")
- },
-
- RotateRightExtend { source } => {
- write!(f, "{source}, RRX")
- },
-
- RotateRightRegister { source, shift } => {
- write!(f, "{source}, ROR {shift}")
- },
- }
- }
-}