Roger Chang has uploaded this change for review. (
https://gem5-review.googlesource.com/c/public/gem5/+/66811?usp=email )
Change subject: arch-riscv: Refactor template JumpConstructor
......................................................................
arch-riscv: Refactor template JumpConstructor
Change-Id: I1b39a6c1dc52c8035f16cc64a1b4c494b14879c0
---
M src/arch/riscv/isa/formats/standard.isa
1 file changed, 17 insertions(+), 3 deletions(-)
diff --git a/src/arch/riscv/isa/formats/standard.isa
b/src/arch/riscv/isa/formats/standard.isa
index 6be281f..bb500f5 100644
--- a/src/arch/riscv/isa/formats/standard.isa
+++ b/src/arch/riscv/isa/formats/standard.isa
@@ -250,9 +250,14 @@
%(constructor)s;
%(imm_code)s;
if (QUADRANT != 0x3) {
- // Handle "c_jr" instruction, set "IsReturn" flag if RC1 is 1
or 5
- if (CFUNCT1 == 0 && (RC1 == 1 || RC1 == 5))
- flags[IsReturn] = true;
+ if (COPCODE == 4) {
+ // Handle "c_jr" instruction, set "IsReturn" flag if RC1
is 1 or 5
+ if (CFUNCT1 == 0 && (RC1 == 1 || RC1 == 5))
+ flags[IsReturn] = true;
+ // Handle "c_jalr" instruction, set IsReturn if RC1 != ra
+ if (CFUNCT1 == 1 && RC1 == 5)
+ flags[IsReturn] = true;
+ }
} else {
bool rd_link = (RD == 1 || RD == 5);
bool rs1_link = (RS1 == 1 || RS1 == 5);
--
To view, visit
https://gem5-review.googlesource.com/c/public/gem5/+/66811?usp=email
To unsubscribe, or for help writing mail filters, visit
https://gem5-review.googlesource.com/settings
Gerrit-Project: public/gem5
Gerrit-Branch: develop
Gerrit-Change-Id: I1b39a6c1dc52c8035f16cc64a1b4c494b14879c0
Gerrit-Change-Number: 66811
Gerrit-PatchSet: 1
Gerrit-Owner: Roger Chang <rogerycch...@google.com>
Gerrit-MessageType: newchange
_______________________________________________
gem5-dev mailing list -- gem5-dev@gem5.org
To unsubscribe send an email to gem5-dev-le...@gem5.org