[gem5-dev] Change in gem5/gem5[develop]: arch: Split up src/dest register ID creation.

2022-03-28 Thread Gabe Black (Gerrit) via gem5-dev
Gabe Black has submitted this change. (  
https://gem5-review.googlesource.com/c/public/gem5/+/49747 )


 (

66 is the latest approved patch-set.
No files were changed between the latest approved patch-set and the  
submitted one.

 )Change subject: arch: Split up src/dest register ID creation.
..

arch: Split up src/dest register ID creation.

This will allow us to selectively change the RegID of an operand to, for
instance, convert it to InvalidRegClass just as a source so it never
actually gets read.

Change-Id: I9f8117cbb2088f8150080f815cdb5cb84bd7218e
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/49747
Reviewed-by: Giacomo Travaglini 
Maintainer: Giacomo Travaglini 
Tested-by: kokoro 
---
M src/arch/isa_parser/operand_types.py
1 file changed, 27 insertions(+), 4 deletions(-)

Approvals:
  Giacomo Travaglini: Looks good to me, approved; Looks good to me, approved
  kokoro: Regressions pass




diff --git a/src/arch/isa_parser/operand_types.py  
b/src/arch/isa_parser/operand_types.py

index dbb4b2d..a9f5eab 100755
--- a/src/arch/isa_parser/operand_types.py
+++ b/src/arch/isa_parser/operand_types.py
@@ -143,6 +143,12 @@
 def regId(self):
 return f'RegId({self.reg_class}, {self.reg_spec})'

+def srcRegId(self):
+return self.regId()
+
+def destRegId(self):
+return self.regId()
+
 def __init__(self, parser, full_name, ext, is_src, is_dest):
 self.parser = parser
 self.full_name = full_name
@@ -238,13 +244,13 @@
 c_dest = ''

 if self.is_src:
-c_src = self.src_reg_constructor % self.regId()
+c_src = self.src_reg_constructor % self.srcRegId()
 if self.hasReadPred():
 c_src = '\n\tif (%s) {%s\n\t}' % \
 (self.read_predicate, c_src)

 if self.is_dest:
-c_dest = self.dst_reg_constructor % self.regId()
+c_dest = self.dst_reg_constructor % self.destRegId()
 c_dest += f'\n\t_numTypedDestRegs[{self.reg_class}]++;'
 if self.hasWritePred():
 c_dest = '\n\tif (%s) {%s\n\t}' % \
@@ -499,10 +505,10 @@
 c_dest = ''

 if self.is_src:
-c_src = self.src_reg_constructor % self.regId()
+c_src = self.src_reg_constructor % self.srcRegId()

 if self.is_dest:
-c_dest = self.dst_reg_constructor % self.regId()
+c_dest = self.dst_reg_constructor % self.destRegId()

 return c_src + c_dest


--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/49747
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: I9f8117cbb2088f8150080f815cdb5cb84bd7218e
Gerrit-Change-Number: 49747
Gerrit-PatchSet: 68
Gerrit-Owner: Gabe Black 
Gerrit-Reviewer: Gabe Black 
Gerrit-Reviewer: Giacomo Travaglini 
Gerrit-Reviewer: kokoro 
Gerrit-MessageType: merged
___
gem5-dev mailing list -- gem5-dev@gem5.org
To unsubscribe send an email to gem5-dev-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

[gem5-dev] Change in gem5/gem5[develop]: arch: Split up src/dest register ID creation.

2021-08-31 Thread Gabe Black (Gerrit) via gem5-dev
Gabe Black has uploaded this change for review. (  
https://gem5-review.googlesource.com/c/public/gem5/+/49747 )



Change subject: arch: Split up src/dest register ID creation.
..

arch: Split up src/dest register ID creation.

This will allow us to selectively change the RegID of an operand to, for
instance, convert it to InvalidRegClass just as a source so it never
actually gets read.

Change-Id: I9f8117cbb2088f8150080f815cdb5cb84bd7218e
---
M src/arch/isa_parser/operand_types.py
1 file changed, 10 insertions(+), 4 deletions(-)



diff --git a/src/arch/isa_parser/operand_types.py  
b/src/arch/isa_parser/operand_types.py

index 6121ff3..e22358f 100755
--- a/src/arch/isa_parser/operand_types.py
+++ b/src/arch/isa_parser/operand_types.py
@@ -118,6 +118,12 @@
 def regId(self):
 return f'RegId({self.reg_class}, {self.reg_spec})'

+def srcRegId(self):
+return self.regId()
+
+def destRegId(self):
+return self.regId()
+
 def __init__(self, parser, full_name, ext, is_src, is_dest):
 self.parser = parser
 self.full_name = full_name
@@ -213,13 +219,13 @@
 c_dest = ''

 if self.is_src:
-c_src = self.src_reg_constructor % self.regId()
+c_src = self.src_reg_constructor % self.srcRegId()
 if self.hasReadPred():
 c_src = '\n\tif (%s) {%s\n\t}' % \
 (self.read_predicate, c_src)

 if self.is_dest:
-c_dest = self.dst_reg_constructor % self.regId()
+c_dest = self.dst_reg_constructor % self.destRegId()
 c_dest += f'\n\t_numTypedDestRegs[{self.reg_class}]++;'
 if self.hasWritePred():
 c_dest = '\n\tif (%s) {%s\n\t}' % \
@@ -460,10 +466,10 @@
 c_dest = ''

 if self.is_src:
-c_src = self.src_reg_constructor % self.regId()
+c_src = self.src_reg_constructor % self.srcRegId()

 if self.is_dest:
-c_dest = self.dst_reg_constructor % self.regId()
+c_dest = self.dst_reg_constructor % self.destRegId()

 return c_src + c_dest


--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/49747
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: I9f8117cbb2088f8150080f815cdb5cb84bd7218e
Gerrit-Change-Number: 49747
Gerrit-PatchSet: 1
Gerrit-Owner: Gabe Black 
Gerrit-MessageType: newchange
___
gem5-dev mailing list -- gem5-dev@gem5.org
To unsubscribe send an email to gem5-dev-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s