Get ARM mode passing again
quick, slow, and zend/good almost all pass with this diff, after a bunch of
lockdown breakage. I say "almost" because strtotime_leak.php still
fails. I believe that's a consequence of interp'ing everything, although
there may be a real memory leak there. I'll deal with that in an
upcoming diff.
- Since InterpOne has catch traces now, we can't punt on BeginCatch and
EndCatch anymore. It seems that for the time being, we can skate by
without actually implementing catch traces, though. The stack is
always spilled before InterpOne, and because everything is InterpOne'd
we're not actually holding anything in registers (so we don't need to
restore them).
- NewStructArray wasn't accounted for in all places in translator.cpp.
- I reduced the amount of work that mixedbag.php does, so that it
completes in a reasonable amount of time in ARM mode. It's still
executing all the same code, just fewer times.
Reviewed By: @jdelong
Differential Revision:
D1080648