[llvm] r282192 - [Hexagon] Remove USR_OVF from CtrRegs register class
Krzysztof Parzyszek via llvm-commits
llvm-commits at lists.llvm.org
Thu Sep 22 13:59:41 PDT 2016
Author: kparzysz
Date: Thu Sep 22 15:59:41 2016
New Revision: 282192
URL: http://llvm.org/viewvc/llvm-project?rev=282192&view=rev
Log:
[Hexagon] Remove USR_OVF from CtrRegs register class
USR_OVF is a subregister of USR, which is a member of CtrRegs. Having both
a register and its proper subregister in the same register class has bad
consequences for lane mask calculation: based solely on the lane mask info,
USR_OVF would not appear to be a subregister of USR.
Modified:
llvm/trunk/lib/Target/Hexagon/HexagonRegisterInfo.td
Modified: llvm/trunk/lib/Target/Hexagon/HexagonRegisterInfo.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Hexagon/HexagonRegisterInfo.td?rev=282192&r1=282191&r2=282192&view=diff
==============================================================================
--- llvm/trunk/lib/Target/Hexagon/HexagonRegisterInfo.td (original)
+++ llvm/trunk/lib/Target/Hexagon/HexagonRegisterInfo.td Thu Sep 22 15:59:41 2016
@@ -260,7 +260,10 @@ def CtrRegs : RegisterClass<"Hexagon", [
(add LC0, SA0, LC1, SA1,
P3_0, C5,
M0, M1, C6, C7, C8, CS0, CS1, UPCL, UPCH,
- USR, USR_OVF, UGP, GP, PC)>;
+ USR, UGP, GP, PC)>;
+
+let isAllocatable = 0 in
+def UsrBits : RegisterClass<"Hexagon", [i1], 0, (add USR_OVF)>;
let Size = 64, isAllocatable = 0 in
def CtrRegs64 : RegisterClass<"Hexagon", [i64], 64,
More information about the llvm-commits
mailing list