[gem5-dev] Change in gem5/gem5[develop]: arch-power: Add hardware features

2021-07-04 Thread Boris Shingarov (Gerrit) via gem5-dev
Boris Shingarov has submitted this change. (  
https://gem5-review.googlesource.com/c/public/gem5/+/40942 )


Change subject: arch-power: Add hardware features
..

arch-power: Add hardware features

This adds definitions for the hardware feature bits that
are currently available from the AT_HWCAP and AT_HWCAP2
auxv entries for the Power architecture. These are being
defined for future use.

Change-Id: I8214a4a26c502b1b0f31837069084b2e7cb31c51
Signed-off-by: Sandipan Das 
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/40942
Reviewed-by: Boris Shingarov 
Maintainer: Boris Shingarov 
Tested-by: kokoro 
---
M src/arch/power/process.hh
1 file changed, 41 insertions(+), 0 deletions(-)

Approvals:
  Boris Shingarov: Looks good to me, approved; Looks good to me, approved
  kokoro: Regressions pass



diff --git a/src/arch/power/process.hh b/src/arch/power/process.hh
index 9f2ce4b..ea5e957 100644
--- a/src/arch/power/process.hh
+++ b/src/arch/power/process.hh
@@ -55,4 +55,45 @@

 } // namespace gem5

+enum PowerHWCAPFeature
+{
+HWCAP_FEATURE_32 = 1ULL << 31,// Always set for powerpc64
+HWCAP_FEATURE_64 = 1ULL << 30,// Always set for powerpc64
+HWCAP_FEATURE_HAS_ALTIVEC = 1ULL << 28,
+HWCAP_FEATURE_HAS_FPU = 1ULL << 27,
+HWCAP_FEATURE_HAS_MMU = 1ULL << 26,
+HWCAP_FEATURE_UNIFIED_CACHE = 1ULL << 24,
+HWCAP_FEATURE_NO_TB = 1ULL << 20, // 601/403gx have no timebase
+HWCAP_FEATURE_POWER4 = 1ULL << 19,// POWER4 ISA 2.00
+HWCAP_FEATURE_POWER5 = 1ULL << 18,// POWER5 ISA 2.02
+HWCAP_FEATURE_POWER5_PLUS = 1ULL << 17,   // POWER5+ ISA 2.03
+HWCAP_FEATURE_CELL_BE = 1ULL << 16,   // CELL Broadband Engine
+HWCAP_FEATURE_BOOKE = 1ULL << 15, // ISA Category Embedded
+HWCAP_FEATURE_SMT = 1ULL << 14,   // Simultaneous  
Multi-Threading

+HWCAP_FEATURE_ICACHE_SNOOP = 1ULL << 13,
+HWCAP_FEATURE_ARCH_2_05 = 1ULL << 12, // ISA 2.05
+HWCAP_FEATURE_PA6T = 1ULL << 11,  // PA Semi 6T Core
+HWCAP_FEATURE_HAS_DFP = 1ULL << 10,   // Decimal FP Unit
+HWCAP_FEATURE_POWER6_EXT = 1ULL << 9, // P6 + mffgpr/mftgpr
+HWCAP_FEATURE_ARCH_2_06 = 1ULL << 8,  // ISA 2.06
+HWCAP_FEATURE_HAS_VSX = 1ULL << 7,// P7 Vector Extension
+HWCAP_FEATURE_PSERIES_PERFMON_COMPAT = 1ULL << 6,
+HWCAP_FEATURE_TRUE_LE = 1ULL << 1,
+HWCAP_FEATURE_PPC_LE = 1ULL << 0
+};
+
+enum PowerHWCAP2Feature
+{
+HWCAP2_FEATURE_ARCH_2_07 = 1ULL << 31,// ISA 2.07
+HWCAP2_FEATURE_HAS_HTM = 1ULL << 30,  // Hardware Transactional  
Memory
+HWCAP2_FEATURE_HAS_DSCR = 1ULL << 29, // Data Stream Control  
Register

+HWCAP2_FEATURE_HAS_EBB = 1ULL << 28,  // Event Base Branching
+HWCAP2_FEATURE_HAS_ISEL = 1ULL << 27, // Integer Select
+HWCAP2_FEATURE_HAS_TAR = 1ULL << 26,  // Target Address Register
+HWCAP2_FEATURE_HAS_VCRYPTO = 1ULL << 25,  // Vector AES category
+HWCAP2_FEATURE_HTM_NOSC = 1ULL << 24,
+HWCAP2_FEATURE_ARCH_3_00 = 1ULL << 23,// ISA 3.0
+HWCAP2_FEATURE_HAS_IEEE128 = 1ULL << 22,  // VSX IEEE Binary Float  
128-bit

+};
+
 #endif // __POWER_PROCESS_HH__

--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/40942
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: I8214a4a26c502b1b0f31837069084b2e7cb31c51
Gerrit-Change-Number: 40942
Gerrit-PatchSet: 12
Gerrit-Owner: Sandipan Das 
Gerrit-Reviewer: Boris Shingarov 
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-power: Add hardware features

2021-02-07 Thread Sandipan Das (Gerrit) via gem5-dev
Sandipan Das has uploaded this change for review. (  
https://gem5-review.googlesource.com/c/public/gem5/+/40942 )



Change subject: arch-power: Add hardware features
..

arch-power: Add hardware features

This adds definitions for the hardware feature bits that
are currently available from the AT_HWCAP and AT_HWCAP2
auxv entries for the Power architecture. These are being
defined for future use.

Change-Id: I8214a4a26c502b1b0f31837069084b2e7cb31c51
Signed-off-by: Sandipan Das 
---
M src/arch/power/process.hh
1 file changed, 39 insertions(+), 0 deletions(-)



diff --git a/src/arch/power/process.hh b/src/arch/power/process.hh
index bd249a3..337d2df 100644
--- a/src/arch/power/process.hh
+++ b/src/arch/power/process.hh
@@ -49,5 +49,44 @@
 void argsInit(int pageSize);
 };

+enum PowerHWCAPFeature {
+PPC_FEATURE_32 = ULL(1) << 31,// Always set for powerpc64
+PPC_FEATURE_64 = ULL(1) << 30,// Always set for powerpc64
+PPC_FEATURE_HAS_ALTIVEC = ULL(1) << 28,
+PPC_FEATURE_HAS_FPU = ULL(1) << 27,
+PPC_FEATURE_HAS_MMU = ULL(1) << 26,
+PPC_FEATURE_UNIFIED_CACHE = ULL(1) << 24,
+PPC_FEATURE_NO_TB = ULL(1) << 20, // 601/403gx have no timebase
+PPC_FEATURE_POWER4 = ULL(1) << 19,// POWER4 ISA 2.00
+PPC_FEATURE_POWER5 = ULL(1) << 18,// POWER5 ISA 2.02
+PPC_FEATURE_POWER5_PLUS = ULL(1) << 17,   // POWER5+ ISA 2.03
+PPC_FEATURE_CELL_BE = ULL(1) << 16,   // CELL Broadband Engine
+PPC_FEATURE_BOOKE = ULL(1) << 15, // ISA Category Embedded
+PPC_FEATURE_SMT = ULL(1) << 14,   // Simultaneous  
Multi-Threading

+PPC_FEATURE_ICACHE_SNOOP = ULL(1) << 13,
+PPC_FEATURE_ARCH_2_05 = ULL(1) << 12, // ISA 2.05
+PPC_FEATURE_PA6T = ULL(1) << 11,  // PA Semi 6T Core
+PPC_FEATURE_HAS_DFP = ULL(1) << 10,   // Decimal FP Unit
+PPC_FEATURE_POWER6_EXT = ULL(1) << 9, // P6 + mffgpr/mftgpr
+PPC_FEATURE_ARCH_2_06 = ULL(1) << 8,  // ISA 2.06
+PPC_FEATURE_HAS_VSX = ULL(1) << 7,// P7 Vector Extension
+PPC_FEATURE_PSERIES_PERFMON_COMPAT = ULL(1) << 6,
+PPC_FEATURE_TRUE_LE = ULL(1) << 1,
+PPC_FEATURE_PPC_LE = ULL(1) << 0
+};
+
+enum PowerHWCAP2Feature {
+PPC_FEATURE2_ARCH_2_07 = ULL(1) << 31,// ISA 2.07
+PPC_FEATURE2_HAS_HTM = ULL(1) << 30,  // Hardware Transactional  
Memory
+PPC_FEATURE2_HAS_DSCR = ULL(1) << 29, // Data Stream Control  
Register

+PPC_FEATURE2_HAS_EBB = ULL(1) << 28,  // Event Base Branching
+PPC_FEATURE2_HAS_ISEL = ULL(1) << 27, // Integer Select
+PPC_FEATURE2_HAS_TAR = ULL(1) << 26,  // Target Address Register
+PPC_FEATURE2_HAS_VCRYPTO = ULL(1) << 25,  // Vector AES category
+PPC_FEATURE2_HTM_NOSC = ULL(1) << 24,
+PPC_FEATURE2_ARCH_3_00 = ULL(1) << 23,// ISA 3.0
+PPC_FEATURE2_HAS_IEEE128 = ULL(1) << 22,  // VSX IEEE Binary Float  
128-bit

+};
+
 #endif // __POWER_PROCESS_HH__


--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/40942
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: I8214a4a26c502b1b0f31837069084b2e7cb31c51
Gerrit-Change-Number: 40942
Gerrit-PatchSet: 1
Gerrit-Owner: Sandipan Das 
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