implement CCMatchIfCC in terms of CCMatchIf
authorChris Lattner <sabre@nondot.org>
Tue, 27 Feb 2007 20:45:02 +0000 (20:45 +0000)
committerChris Lattner <sabre@nondot.org>
Tue, 27 Feb 2007 20:45:02 +0000 (20:45 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34685 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/TargetCallingConv.td

index 3dcd7458f83433c88945c1e9e5c51be82f3321a8..8a619af621b6f5e606c3a71158f6be882cd4edf9 100644 (file)
@@ -23,7 +23,8 @@ class CCPredicateAction<CCAction A> : CCAction {
 
 /// CCMatchType - If the current argument is one of the specified types, apply
 /// Action A.
-class CCMatchType<list<ValueType> VTs, CCAction A> : CCPredicateAction<A> {
+class CCMatchType<list<ValueType> vts, CCAction A> : CCPredicateAction<A> {
+  list<ValueType> VTs = vts;
 }
 
 /// CCMatchIf - If the predicate matches, apply A.
@@ -32,9 +33,8 @@ class CCMatchIf<string predicate, CCAction A> : CCPredicateAction<A> {
 }
 
 /// CCMatchIfCC - Match of the current calling convention is 'CC'.
-class CCMatchIfCC<string CC, CCAction A> : CCPredicateAction<A> {
-  string CallingConv = CC;
-}
+class CCMatchIfCC<string CC, CCAction A>
+  : CCMatchIf<!strconcat("State.getCallingConv() == ", CC), A> {}
 
 /// CCAssignToReg - This action matches if there is a register in the specified
 /// list that is still available.  If so, it assigns the value to the first