aboutsummaryrefslogtreecommitdiff
path: root/cpu
diff options
context:
space:
mode:
authorStefan Kristiansson <stefan.kristiansson@saunalahti.fi>2014-07-20 20:26:09 +0300
committerStefan Kristiansson <stefan.kristiansson@saunalahti.fi>2014-07-20 20:26:09 +0300
commit018dc9bedf40d528f1d05d56555e20ed54a77dc3 (patch)
tree3b00411c0efdc5c37291f60739bf6f28ea3c5980 /cpu
parentFix for remote G Packet message too long error for baremetal. (diff)
downloadbinutils-gdb-018dc9bedf40d528f1d05d56555e20ed54a77dc3.tar.gz
binutils-gdb-018dc9bedf40d528f1d05d56555e20ed54a77dc3.tar.bz2
binutils-gdb-018dc9bedf40d528f1d05d56555e20ed54a77dc3.zip
or1k: add missing l.msync, l.psync and l.psync instructions.
Even though the opcodes were defined for these instructions, the actual instruction definitions were lacking. cpu/ * or1korbis.cpu (l-msync, l-psync, l-csync): New instructions. opcodes/ * or1k-desc.c, * or1k-desc.h, * or1k-opc.c, * or1k-opc.h, * or1k-opinst.c: Regenerate.
Diffstat (limited to 'cpu')
-rw-r--r--cpu/ChangeLog4
-rw-r--r--cpu/or1korbis.cpu24
2 files changed, 28 insertions, 0 deletions
diff --git a/cpu/ChangeLog b/cpu/ChangeLog
index 7f78a26706c..0594cdf9330 100644
--- a/cpu/ChangeLog
+++ b/cpu/ChangeLog
@@ -1,3 +1,7 @@
+2014-07-20 Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
+
+ * or1korbis.cpu (l-msync, l-psync, l-csync): New instructions.
+
2014-06-12 Alan Modra <amodra@gmail.com>
* or1k.opc: Whitespace fixes.
diff --git a/cpu/or1korbis.cpu b/cpu/or1korbis.cpu
index 454a2af0eba..408a135fa04 100644
--- a/cpu/or1korbis.cpu
+++ b/cpu/or1korbis.cpu
@@ -52,6 +52,7 @@
(dnf f-resv-25-10 "resv-25-10" ((MACH ORBIS-MACHS) RESERVED) 25 10)
(dnf f-resv-25-5 "resv-25-5" ((MACH ORBIS-MACHS) RESERVED) 25 5)
(dnf f-resv-23-8 "resv-23-8" ((MACH ORBIS-MACHS) RESERVED) 23 8)
+(dnf f-resv-20-21 "resv-20-21" ((MACH ORBIS-MACHS) RESERVED) 20 21)
(dnf f-resv-20-5 "resv-20-5" ((MACH ORBIS-MACHS) RESERVED) 20 5)
(dnf f-resv-20-4 "resv-20-4" ((MACH ORBIS-MACHS) RESERVED) 20 4)
(dnf f-resv-15-8 "resv-15-8" ((MACH ORBIS-MACHS) RESERVED) 15 8)
@@ -484,6 +485,29 @@
()
)
+(dni l-msync "memory sync"
+ ((MACH ORBIS-MACHS))
+ "l.msync"
+ (+ OPC_SYSTRAPSYNCS OPC_SYSTRAPSYNCS_MSYNC (f-resv-20-21 0))
+ (nop)
+ ()
+)
+
+(dni l-psync "pipeline sync"
+ ((MACH ORBIS-MACHS))
+ "l.psync"
+ (+ OPC_SYSTRAPSYNCS OPC_SYSTRAPSYNCS_PSYNC (f-resv-20-21 0))
+ (nop)
+ ()
+)
+
+(dni l-csync "context sync"
+ ((MACH ORBIS-MACHS))
+ "l.csync"
+ (+ OPC_SYSTRAPSYNCS OPC_SYSTRAPSYNCS_CSYNC (f-resv-20-21 0))
+ (nop)
+ ()
+)
(dni l-rfe "return from exception"
; This function may not be in delay slot