There are 37 test cases in the legacy modexpFiller.json test. Most of them have been ported, but the following cases are still pending and require further analysis:
Case 2: Would parse a base length of 0, a modulus length of 32, and an exponent length of 2256 - 1, where the base is empty, the modulus is 2256 - 2 and the exponent is (2256 - 3) * 256(2**256 - 33) (yes, that's a really big number). It would then immediately fail, as it's not possible to provide enough gas to make that computation.
Case 28: base length 4TiB
Case 29: exp length 4TiB; returns 0 because mod is zero
Case 30: base and mod have zero-length. exp's length is 2^255. Since mod is zero, the result should be zero.
Case 36: the input found on 10 Oct. 2017 that overflows the gas calculation
Case 37: input found in July 2022, overflows the gas calculation
Based on the description of case 2, 28, 29 and 30, they will fail as eip7623 introduces the upper bound for each field, we already have similar test in test_modexp_invalid_inputs.
For case 36, 37, I am checking if it is valid after Fusaka.
Extra Test Cases EIP-7883
ModExp Gas Cost Increase
Please comment any additional test cases or edit the issue and add more.