Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(19)

Unified Diff: src/IceRegistersARM32.h

Issue 1571433004: Implements include/exclude register lists for translation. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Fix nits. Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/IceRegistersARM32.h
diff --git a/src/IceRegistersARM32.h b/src/IceRegistersARM32.h
index 31323c250b9d725410133ec4e9094ba2d8512233..3136b38ebdd6a0094002a5e5b3a829ee64bd645c 100644
--- a/src/IceRegistersARM32.h
+++ b/src/IceRegistersARM32.h
@@ -146,12 +146,39 @@ public:
#undef X
};
+ enum RegClass {
Jim Stichnoth 2016/01/13 16:24:54 FWIW, there is already Ice::RegClass defined in Ic
Karl 2016/01/14 18:27:19 Changed to use TypeToRegisterSet vectors for this
+ RegClass_GP,
+ RegClass_GPPair,
+ RegClass_S,
+ RegClass_D,
+ RegClass_Q,
+ RegClass_Other,
+ // Defines the number of RegClass'es
+ Num_RegClasses
Jim Stichnoth 2016/01/13 16:24:54 Usually this dummy value is named something like R
Karl 2016/01/14 18:27:19 Done.
+ };
+
static inline void assertRegisterDefined(int32_t RegNum) {
(void)RegNum;
assert(RegNum >= 0);
assert(RegNum < Reg_NUM);
}
+ static RegClass getRegClass(int32_t RegNum) {
Jim Stichnoth 2016/01/13 16:24:54 I'm not sure why some of these functions are "stat
Karl 2016/01/14 18:27:19 The inline's are removed. I left removing class Re
+ assert(RegNum >= 0);
+ assert(RegNum < Reg_NUM);
+ if (Table[RegNum].IsGPR)
+ return RegClass_GP;
+ if (Table[RegNum].IsI64Pair)
+ return RegClass_GPPair;
+ if (Table[RegNum].IsFP32)
+ return RegClass_S;
+ if (Table[RegNum].IsFP64)
+ return RegClass_D;
+ if (Table[RegNum].IsVec128)
+ return RegClass_Q;
+ return RegClass_Other;
+ }
+
static inline bool isGPRegister(int32_t RegNum) {
assertRegisterDefined(RegNum);
return Table[RegNum].IsGPR;

Powered by Google App Engine
This is Rietveld 408576698