diff --git a/evm/src/cpu/kernel/tests/bn254.rs b/evm/src/cpu/kernel/tests/bn254.rs index 63dd5b79..f1a244cc 100644 --- a/evm/src/cpu/kernel/tests/bn254.rs +++ b/evm/src/cpu/kernel/tests/bn254.rs @@ -240,7 +240,7 @@ fn test_bn_pairing() -> Result<()> { let inputs: Vec = u256ify(vec![ "0x1c76476f4def4bb94541d57ebba1193381ffa7aa76ada664dd31c16024c43f59", "0x3034dd2920f673e204fee2811c678745fc819b55d3e9d294e45c9b03a76aef41", - "0x4bf11ca01483bfa8b34b43561848d28905960114c8ac04049af4b6315a41678", + "0x04bf11ca01483bfa8b34b43561848d28905960114c8ac04049af4b6315a41678", "0x209dd15ebff5d46c4bd888e51a93cf99a7329636c63514396b4a452003a35bf7", "0x120a2a4cf30c1bf9845f20c6fe39e07ea2cce61f0c9bb048165fe5e4de877550", "0x2bb8324af6cfc93537a2ad1a445cfd0ca2a71acd7ac41fadbf933c2a51be344d", @@ -249,51 +249,11 @@ fn test_bn_pairing() -> Result<()> { "0x1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed", "0x198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c2", "0x12c85ea5db8c6deb4aab71808dcb408fe3d1e7690c43d37b4ce6cc0166fa7daa", - "0x90689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b", + "0x900689d0585ff075ec9e99ad690c3395bc4b313370b38ef355acdadcd122975b", ]) .unwrap(); - let A: Curve = { - Curve { - x: BN254 { val: inputs[0] }, - y: BN254 { val: inputs[1] }, - } - }; - - let B: TwistedCurve = { - TwistedCurve { - x: Fp2 { - re: BN254 { val: inputs[2] }, - im: BN254 { val: inputs[3] }, - }, - y: Fp2 { - re: BN254 { val: inputs[4] }, - im: BN254 { val: inputs[5] }, - }, - } - }; - - let C: Curve = { - Curve { - x: BN254 { val: inputs[6] }, - y: BN254 { val: inputs[7] }, - } - }; - - let D: TwistedCurve = { - TwistedCurve { - x: Fp2 { - re: BN254 { val: inputs[8] }, - im: BN254 { val: inputs[9] }, - }, - y: Fp2 { - re: BN254 { val: inputs[10] }, - im: BN254 { val: inputs[11] }, - }, - } - }; - - let setup1 = InterpreterMemoryInitialization { + let setup = InterpreterMemoryInitialization { label: "bn254_pairing".to_string(), stack: vec![ U256::one(), @@ -302,24 +262,9 @@ fn test_bn_pairing() -> Result<()> { U256::from(0xdeadbeefu32), ], segment: BnPairing, - memory: vec![(ptr, inputs[0..6].to_vec())], + memory: vec![(ptr, inputs)], }; - let interpreter1 = run_interpreter_with_memory(setup1).unwrap(); - let output1 = interpreter1.extract_kernel_memory(BnPairing, out..out + 12); - - let setup2 = InterpreterMemoryInitialization { - label: "bn254_pairing".to_string(), - stack: vec![ - U256::one(), - U256::from(ptr), - U256::from(out), - U256::from(0xdeadbeefu32), - ], - segment: BnPairing, - memory: vec![(ptr, inputs[6..12].to_vec())], - }; - let interpreter2 = run_interpreter_with_memory(setup2).unwrap(); - let output2 = interpreter2.extract_kernel_memory(BnPairing, out..out + 12); - + let interpreter = run_interpreter_with_memory(setup).unwrap(); + assert_eq!(interpreter.stack(), Fp12::::UNIT.on_stack()); Ok(()) }