From d7a1085619c54eb267d1172cbb92d518a28725a3 Mon Sep 17 00:00:00 2001 From: emteere <47253321+emteere@users.noreply.github.com> Date: Mon, 25 Jan 2021 15:21:47 -0500 Subject: [PATCH] GP-33_emteere Updated comment, read Status reg only once --- .../Processors/MIPS/data/languages/mips32Instructions.sinc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Ghidra/Processors/MIPS/data/languages/mips32Instructions.sinc b/Ghidra/Processors/MIPS/data/languages/mips32Instructions.sinc index 206456d91e..061a5a72bc 100644 --- a/Ghidra/Processors/MIPS/data/languages/mips32Instructions.sinc +++ b/Ghidra/Processors/MIPS/data/languages/mips32Instructions.sinc @@ -184,10 +184,11 @@ define pcodeop special2; Status = Status | 1; } -# http://people.cs.pitt.edu/~don/coe1502/current/Unit4a/Unit4a.html +# MIPS R3000 only, replaced with ERET >= R4000 # 0100 0010 0000 0000 0000 0000 0001 0000 :rfe is $(AMODE) & prime=0x10 & fct=0x10 & bit25=1 & copfill=0 { - Status = (Status & 0xfffffff0) | ((Status & 0x3c) >> 2); + local currentStatus = Status; + Status = (currentStatus & 0xfffffff0) | ((currentStatus & 0x3c) >> 2); } # 0100 0010 0000 0000 0000 0000 0001 1000