aboutsummaryrefslogtreecommitdiffhomepage
path: root/parsing/egramml.ml
diff options
context:
space:
mode:
authorGravatar Pierre-Marie Pédrot <pierre-marie.pedrot@inria.fr>2017-04-08 19:24:00 +0200
committerGravatar Pierre-Marie Pédrot <pierre-marie.pedrot@inria.fr>2017-04-08 20:30:51 +0200
commitaa704399c4d4b8a74f4d6f42e65808c1ceab3b7e (patch)
treefa0af006d4db1cd2690d5d907adc3cb424078599 /parsing/egramml.ml
parent2c0287fe8445bd4b599bf8498bcb71b2a7df0d51 (diff)
Fast path in weak head reduction of applied atoms.
Instead of calling the whole reduction machirery, we check before reducing that a term is an applied atom, i.e. inductive, constructor, evar or meta. In that case, the abstract machine acts as the identity but needs to destruct and reconstruct the whole term, which can be very costly. This fixes part of bug #5421: vm_compute is very slow at doing nothing, where recomputation of the type of a big inductive was incredibly expensive.
Diffstat (limited to 'parsing/egramml.ml')
0 files changed, 0 insertions, 0 deletions