@@ -12,12 +12,15 @@ use crate::execution::common_hints::HintExecutionResult;
1212use crate :: execution:: execution_utils:: felt_from_ptr;
1313use crate :: execution:: syscalls:: hint_processor:: { SyscallExecutionError , OUT_OF_GAS_ERROR } ;
1414use crate :: execution:: syscalls:: secp:: {
15+ Secp256r1NewRequest ,
16+ Secp256r1NewResponse ,
1517 SecpAddRequest ,
1618 SecpAddResponse ,
1719 SecpGetPointFromXRequest ,
1820 SecpGetPointFromXResponse ,
1921 SecpGetXyRequest ,
2022 SecpGetXyResponse ,
23+ SecpHintProcessor ,
2124 SecpMulRequest ,
2225 SecpMulResponse ,
2326 SecpNewRequest ,
@@ -72,6 +75,10 @@ pub trait SyscallExecutor {
7275 remaining_gas : & mut u64 ,
7376 ) -> SyscallResult < ( [ u64 ; 4 ] , usize ) > ;
7477
78+ fn get_secpk1_hint_processor ( & mut self ) -> & mut SecpHintProcessor < ark_secp256k1:: Config > ;
79+
80+ fn get_secpr1_hint_processor ( & mut self ) -> & mut SecpHintProcessor < ark_secp256r1:: Config > ;
81+
7582 fn increment_syscall_count_by ( & mut self , selector : & SyscallSelector , count : usize ) ;
7683
7784 fn increment_syscall_count ( & mut self , selector : & SyscallSelector ) {
@@ -192,73 +199,93 @@ pub trait SyscallExecutor {
192199
193200 fn secp256k1_add (
194201 request : SecpAddRequest ,
195- vm : & mut VirtualMachine ,
202+ _vm : & mut VirtualMachine ,
196203 syscall_handler : & mut Self ,
197- remaining_gas : & mut u64 ,
198- ) -> SyscallResult < SecpAddResponse > ;
204+ _remaining_gas : & mut u64 ,
205+ ) -> SyscallResult < SecpAddResponse > {
206+ syscall_handler. get_secpk1_hint_processor ( ) . secp_add ( request)
207+ }
199208
200209 fn secp256k1_get_point_from_x (
201210 request : SecpGetPointFromXRequest ,
202211 vm : & mut VirtualMachine ,
203212 syscall_handler : & mut Self ,
204- remaining_gas : & mut u64 ,
205- ) -> SyscallResult < SecpGetPointFromXResponse > ;
213+ _remaining_gas : & mut u64 ,
214+ ) -> SyscallResult < SecpGetPointFromXResponse > {
215+ syscall_handler. get_secpk1_hint_processor ( ) . secp_get_point_from_x ( vm, request)
216+ }
206217
207218 fn secp256k1_get_xy (
208219 request : SecpGetXyRequest ,
209- vm : & mut VirtualMachine ,
220+ _vm : & mut VirtualMachine ,
210221 syscall_handler : & mut Self ,
211- remaining_gas : & mut u64 ,
212- ) -> SyscallResult < SecpGetXyResponse > ;
222+ _remaining_gas : & mut u64 ,
223+ ) -> SyscallResult < SecpGetXyResponse > {
224+ syscall_handler. get_secpk1_hint_processor ( ) . secp_get_xy ( request)
225+ }
213226
214227 fn secp256k1_mul (
215228 request : SecpMulRequest ,
216- vm : & mut VirtualMachine ,
229+ _vm : & mut VirtualMachine ,
217230 syscall_handler : & mut Self ,
218- remaining_gas : & mut u64 ,
219- ) -> SyscallResult < SecpMulResponse > ;
231+ _remaining_gas : & mut u64 ,
232+ ) -> SyscallResult < SecpMulResponse > {
233+ syscall_handler. get_secpk1_hint_processor ( ) . secp_mul ( request)
234+ }
220235
221236 fn secp256k1_new (
222237 request : SecpNewRequest ,
223238 vm : & mut VirtualMachine ,
224239 syscall_handler : & mut Self ,
225- remaining_gas : & mut u64 ,
226- ) -> SyscallResult < SecpNewResponse > ;
240+ _remaining_gas : & mut u64 ,
241+ ) -> SyscallResult < SecpNewResponse > {
242+ syscall_handler. get_secpk1_hint_processor ( ) . secp_new ( vm, request)
243+ }
227244
228245 fn secp256r1_add (
229246 request : SecpAddRequest ,
230- vm : & mut VirtualMachine ,
247+ _vm : & mut VirtualMachine ,
231248 syscall_handler : & mut Self ,
232- remaining_gas : & mut u64 ,
233- ) -> SyscallResult < SecpAddResponse > ;
249+ _remaining_gas : & mut u64 ,
250+ ) -> SyscallResult < SecpAddResponse > {
251+ syscall_handler. get_secpr1_hint_processor ( ) . secp_add ( request)
252+ }
234253
235254 fn secp256r1_get_point_from_x (
236255 request : SecpGetPointFromXRequest ,
237256 vm : & mut VirtualMachine ,
238257 syscall_handler : & mut Self ,
239- remaining_gas : & mut u64 ,
240- ) -> SyscallResult < SecpGetPointFromXResponse > ;
258+ _remaining_gas : & mut u64 ,
259+ ) -> SyscallResult < SecpGetPointFromXResponse > {
260+ syscall_handler. get_secpr1_hint_processor ( ) . secp_get_point_from_x ( vm, request)
261+ }
241262
242263 fn secp256r1_get_xy (
243264 request : SecpGetXyRequest ,
244- vm : & mut VirtualMachine ,
265+ _vm : & mut VirtualMachine ,
245266 syscall_handler : & mut Self ,
246- remaining_gas : & mut u64 ,
247- ) -> SyscallResult < SecpGetXyResponse > ;
267+ _remaining_gas : & mut u64 ,
268+ ) -> SyscallResult < SecpGetXyResponse > {
269+ syscall_handler. get_secpr1_hint_processor ( ) . secp_get_xy ( request)
270+ }
248271
249272 fn secp256r1_mul (
250273 request : SecpMulRequest ,
251- vm : & mut VirtualMachine ,
274+ _vm : & mut VirtualMachine ,
252275 syscall_handler : & mut Self ,
253- remaining_gas : & mut u64 ,
254- ) -> SyscallResult < SecpMulResponse > ;
276+ _remaining_gas : & mut u64 ,
277+ ) -> SyscallResult < SecpMulResponse > {
278+ syscall_handler. get_secpr1_hint_processor ( ) . secp_mul ( request)
279+ }
255280
256281 fn secp256r1_new (
257- request : SecpNewRequest ,
282+ request : Secp256r1NewRequest ,
258283 vm : & mut VirtualMachine ,
259284 syscall_handler : & mut Self ,
260- remaining_gas : & mut u64 ,
261- ) -> SyscallResult < SecpNewResponse > ;
285+ _remaining_gas : & mut u64 ,
286+ ) -> SyscallResult < Secp256r1NewResponse > {
287+ syscall_handler. get_secpr1_hint_processor ( ) . secp_new ( vm, request)
288+ }
262289
263290 fn send_message_to_l1 (
264291 request : SendMessageToL1Request ,
0 commit comments