@@ -91,8 +91,8 @@ static Object callSpecialMethodSlotCallTarget(VirtualFrame frame, TernaryBuiltin
91
91
return invokeNode .execute (frame , callTarget , arguments );
92
92
}
93
93
94
- @ Specialization (guards = {"func == cachedFunc" , "builtinNode != null" , "!isReverse" ,
95
- "frame != null || unusedFrame" }, limit = "getCallSiteInlineCacheMaxDepth()" , assumptions = "singleContextAssumption()" )
94
+ @ Specialization (guards = {"isSingleContext()" , " func == cachedFunc" , "builtinNode != null" , "!isReverse" ,
95
+ "frame != null || unusedFrame" }, limit = "getCallSiteInlineCacheMaxDepth()" )
96
96
static Object doBuiltinFunctionCached (VirtualFrame frame , @ SuppressWarnings ("unused" ) PBuiltinFunction func , Object arg1 , Object arg2 , Object arg3 ,
97
97
@ SuppressWarnings ("unused" ) @ Cached ("func" ) PBuiltinFunction cachedFunc ,
98
98
@ SuppressWarnings ("unused" ) @ Cached ("isForReverseBinaryOperation(func.getCallTarget())" ) boolean isReverse ,
@@ -101,8 +101,8 @@ static Object doBuiltinFunctionCached(VirtualFrame frame, @SuppressWarnings("unu
101
101
return builtinNode .execute (frame , arg1 , arg2 , arg3 );
102
102
}
103
103
104
- @ Specialization (guards = {"func == cachedFunc" , "builtinNode != null" , "isReverse" ,
105
- "frame != null || unusedFrame" }, limit = "getCallSiteInlineCacheMaxDepth()" , assumptions = "singleContextAssumption()" )
104
+ @ Specialization (guards = {"isSingleContext()" , " func == cachedFunc" , "builtinNode != null" , "isReverse" ,
105
+ "frame != null || unusedFrame" }, limit = "getCallSiteInlineCacheMaxDepth()" )
106
106
static Object doBuiltinFunctionCachedReverse (VirtualFrame frame , @ SuppressWarnings ("unused" ) PBuiltinFunction func , Object arg1 , Object arg2 , Object arg3 ,
107
107
@ SuppressWarnings ("unused" ) @ Cached ("func" ) PBuiltinFunction cachedFunc ,
108
108
@ SuppressWarnings ("unused" ) @ Cached ("isForReverseBinaryOperation(func.getCallTarget())" ) boolean isReverse ,
@@ -111,7 +111,8 @@ static Object doBuiltinFunctionCachedReverse(VirtualFrame frame, @SuppressWarnin
111
111
return builtinNode .execute (frame , arg2 , arg1 , arg3 );
112
112
}
113
113
114
- @ Specialization (guards = {"func.getCallTarget() == ct" , "builtinNode != null" , "!isReverse" , "frame != null || unusedFrame" }, limit = "getCallSiteInlineCacheMaxDepth()" )
114
+ @ Specialization (guards = {"func.getCallTarget() == ct" , "builtinNode != null" , "!isReverse" , "frame != null || unusedFrame" }, //
115
+ limit = "getCallSiteInlineCacheMaxDepth()" )
115
116
static Object doBuiltinFunctionCtCached (VirtualFrame frame , @ SuppressWarnings ("unused" ) PBuiltinFunction func , Object arg1 , Object arg2 , Object arg3 ,
116
117
@ SuppressWarnings ("unused" ) @ Cached ("func.getCallTarget()" ) RootCallTarget ct ,
117
118
@ SuppressWarnings ("unused" ) @ Cached ("isForReverseBinaryOperation(func.getCallTarget())" ) boolean isReverse ,
@@ -120,7 +121,8 @@ static Object doBuiltinFunctionCtCached(VirtualFrame frame, @SuppressWarnings("u
120
121
return builtinNode .execute (frame , arg1 , arg2 , arg3 );
121
122
}
122
123
123
- @ Specialization (guards = {"func.getCallTarget() == ct" , "builtinNode != null" , "isReverse" , "frame != null || unusedFrame" }, limit = "getCallSiteInlineCacheMaxDepth()" )
124
+ @ Specialization (guards = {"func.getCallTarget() == ct" , "builtinNode != null" , "isReverse" , "frame != null || unusedFrame" }, //
125
+ limit = "getCallSiteInlineCacheMaxDepth()" )
124
126
static Object doBuiltinFunctionCtCachedReverse (VirtualFrame frame , @ SuppressWarnings ("unused" ) PBuiltinFunction func , Object arg1 , Object arg2 , Object arg3 ,
125
127
@ SuppressWarnings ("unused" ) @ Cached ("func.getCallTarget()" ) RootCallTarget ct ,
126
128
@ SuppressWarnings ("unused" ) @ Cached ("isForReverseBinaryOperation(func.getCallTarget())" ) boolean isReverse ,
@@ -129,8 +131,8 @@ static Object doBuiltinFunctionCtCachedReverse(VirtualFrame frame, @SuppressWarn
129
131
return builtinNode .execute (frame , arg2 , arg1 , arg3 );
130
132
}
131
133
132
- @ Specialization (guards = {"func == cachedFunc" , "builtinNode != null" , "!takesSelfArg" ,
133
- "frame != null || unusedFrame" }, limit = "getCallSiteInlineCacheMaxDepth()" , assumptions = "singleContextAssumption()" )
134
+ @ Specialization (guards = {"isSingleContext()" , " func == cachedFunc" , "builtinNode != null" , "!takesSelfArg" ,
135
+ "frame != null || unusedFrame" }, limit = "getCallSiteInlineCacheMaxDepth()" )
134
136
static Object doBuiltinMethodCached (VirtualFrame frame , @ SuppressWarnings ("unused" ) PBuiltinMethod func , Object arg1 , Object arg2 , Object arg3 ,
135
137
@ SuppressWarnings ("unused" ) @ Cached ("func" ) PBuiltinMethod cachedFunc ,
136
138
@ SuppressWarnings ("unused" ) @ Cached ("takesSelfArg(func)" ) boolean takesSelfArg ,
@@ -139,7 +141,8 @@ static Object doBuiltinMethodCached(VirtualFrame frame, @SuppressWarnings("unuse
139
141
return builtinNode .execute (frame , arg1 , arg2 , arg3 );
140
142
}
141
143
142
- @ Specialization (guards = {"builtinNode != null" , "getCallTarget(func, getCt) == ct" , "!takesSelfArg" , "frame != null || unusedFrame" }, limit = "getCallSiteInlineCacheMaxDepth()" )
144
+ @ Specialization (guards = {"builtinNode != null" , "getCallTarget(func, getCt) == ct" , "!takesSelfArg" ,
145
+ "frame != null || unusedFrame" }, limit = "getCallSiteInlineCacheMaxDepth()" )
143
146
static Object doBuiltinMethodCtCached (VirtualFrame frame , @ SuppressWarnings ("unused" ) PBuiltinMethod func , Object arg1 , Object arg2 , Object arg3 ,
144
147
@ SuppressWarnings ("unused" ) @ Cached GetCallTargetNode getCt ,
145
148
@ SuppressWarnings ("unused" ) @ Cached ("getCallTarget(func, getCt)" ) RootCallTarget ct ,
@@ -149,8 +152,8 @@ static Object doBuiltinMethodCtCached(VirtualFrame frame, @SuppressWarnings("unu
149
152
return builtinNode .execute (frame , arg1 , arg2 , arg3 );
150
153
}
151
154
152
- @ Specialization (guards = {"func == cachedFunc" , "builtinNode != null" , "takesSelfArg" ,
153
- "frame != null || unusedFrame" }, limit = "getCallSiteInlineCacheMaxDepth()" , assumptions = "singleContextAssumption()" )
155
+ @ Specialization (guards = {"isSingleContext()" , " func == cachedFunc" , "builtinNode != null" , "takesSelfArg" ,
156
+ "frame != null || unusedFrame" }, limit = "getCallSiteInlineCacheMaxDepth()" )
154
157
static Object callSelfMethodSingleContext (VirtualFrame frame , @ SuppressWarnings ("unused" ) PBuiltinMethod func , Object arg1 , Object arg2 , Object arg3 ,
155
158
@ SuppressWarnings ("unused" ) @ Cached (value = "func" , weak = true ) PBuiltinMethod cachedFunc ,
156
159
@ SuppressWarnings ("unused" ) @ Cached ("takesSelfArg(func)" ) boolean takesSelfArg ,
@@ -159,7 +162,8 @@ static Object callSelfMethodSingleContext(VirtualFrame frame, @SuppressWarnings(
159
162
return builtinNode .execute (frame , func .getSelf (), arg1 , arg2 , arg3 );
160
163
}
161
164
162
- @ Specialization (guards = {"builtinNode != null" , "getCallTarget(func, getCt) == ct" , "takesSelfArg" , "frame != null || unusedFrame" }, limit = "getCallSiteInlineCacheMaxDepth()" )
165
+ @ Specialization (guards = {"builtinNode != null" , "getCallTarget(func, getCt) == ct" , "takesSelfArg" ,
166
+ "frame != null || unusedFrame" }, limit = "getCallSiteInlineCacheMaxDepth()" )
163
167
static Object callSelfMethod (VirtualFrame frame , @ SuppressWarnings ("unused" ) PBuiltinMethod func , Object arg1 , Object arg2 , Object arg3 ,
164
168
@ SuppressWarnings ("unused" ) @ Cached GetCallTargetNode getCt ,
165
169
@ SuppressWarnings ("unused" ) @ Cached ("getCallTarget(func, getCt)" ) RootCallTarget ct ,
0 commit comments