From 872cd724cb206f7dee8dc34d90ba68e4f2a3f468 Mon Sep 17 00:00:00 2001
From: caheckman <48068198+caheckman@users.noreply.github.com>
Date: Thu, 18 Mar 2021 15:20:19 -0400
Subject: [PATCH] Split out BE and LE cspec for MIPS
---
.../src/decompile/cpp/funcdata_varnode.cc | 4 +-
Ghidra/Processors/MIPS/certification.manifest | 3 +-
.../Processors/MIPS/data/languages/mips.ldefs | 14 +--
.../{mips32.cspec => mips32be.cspec} | 0
.../MIPS/data/languages/mips32le.cspec | 90 +++++++++++++++++++
5 files changed, 101 insertions(+), 10 deletions(-)
rename Ghidra/Processors/MIPS/data/languages/{mips32.cspec => mips32be.cspec} (100%)
create mode 100644 Ghidra/Processors/MIPS/data/languages/mips32le.cspec
diff --git a/Ghidra/Features/Decompiler/src/decompile/cpp/funcdata_varnode.cc b/Ghidra/Features/Decompiler/src/decompile/cpp/funcdata_varnode.cc
index 00258dcb96..4956f44da0 100644
--- a/Ghidra/Features/Decompiler/src/decompile/cpp/funcdata_varnode.cc
+++ b/Ghidra/Features/Decompiler/src/decompile/cpp/funcdata_varnode.cc
@@ -4,9 +4,9 @@
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
diff --git a/Ghidra/Processors/MIPS/certification.manifest b/Ghidra/Processors/MIPS/certification.manifest
index 182ff5a607..1152c9daf4 100644
--- a/Ghidra/Processors/MIPS/certification.manifest
+++ b/Ghidra/Processors/MIPS/certification.manifest
@@ -5,14 +5,15 @@ data/languages/mips.dwarf||GHIDRA||||END|
data/languages/mips.ldefs||GHIDRA||||END|
data/languages/mips.sinc||GHIDRA||||END|
data/languages/mips16.sinc||GHIDRA||||END|
-data/languages/mips32.cspec||GHIDRA||||END|
data/languages/mips32.pspec||GHIDRA||||END|
data/languages/mips32Instructions.sinc||GHIDRA||||END|
data/languages/mips32R6.pspec||GHIDRA||||END|
data/languages/mips32R6be.slaspec||GHIDRA||||END|
data/languages/mips32R6le.slaspec||GHIDRA||||END|
data/languages/mips32_fp64.cspec||GHIDRA||||END|
+data/languages/mips32be.cspec||GHIDRA||||END|
data/languages/mips32be.slaspec||GHIDRA||||END|
+data/languages/mips32le.cspec||GHIDRA||||END|
data/languages/mips32le.slaspec||GHIDRA||||END|
data/languages/mips32micro.pspec||GHIDRA||||END|
data/languages/mips64.cspec||GHIDRA||||END|
diff --git a/Ghidra/Processors/MIPS/data/languages/mips.ldefs b/Ghidra/Processors/MIPS/data/languages/mips.ldefs
index abedb93a34..e7281050ad 100644
--- a/Ghidra/Processors/MIPS/data/languages/mips.ldefs
+++ b/Ghidra/Processors/MIPS/data/languages/mips.ldefs
@@ -10,8 +10,8 @@
manualindexfile="../manuals/mipsM16.idx"
id="MIPS:BE:32:default">
MIPS32 32-bit addresses, big endian, with mips16e
-
-
+
+
@@ -26,8 +26,8 @@
manualindexfile="../manuals/mipsM16.idx"
id="MIPS:LE:32:default">
MIPS32 32-bit addresses, little endian, with mips16e
-
-
+
+
@@ -284,7 +284,7 @@
manualindexfile="../manuals/mipsMic.idx"
id="MIPS:BE:32:micro">
MIPS32 32-bit addresses, big endian, with microMIPS
-
+
@@ -299,8 +299,8 @@
manualindexfile="../manuals/mipsMic.idx"
id="MIPS:LE:32:micro">
MIPS32 32-bit addresses, little endian, with microMIPS
-
-
+
+
diff --git a/Ghidra/Processors/MIPS/data/languages/mips32.cspec b/Ghidra/Processors/MIPS/data/languages/mips32be.cspec
similarity index 100%
rename from Ghidra/Processors/MIPS/data/languages/mips32.cspec
rename to Ghidra/Processors/MIPS/data/languages/mips32be.cspec
diff --git a/Ghidra/Processors/MIPS/data/languages/mips32le.cspec b/Ghidra/Processors/MIPS/data/languages/mips32le.cspec
new file mode 100644
index 0000000000..628b8b4756
--- /dev/null
+++ b/Ghidra/Processors/MIPS/data/languages/mips32le.cspec
@@ -0,0 +1,90 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+