Replace the switching function ExecEvalExpr() with a macro that jumps

Tom Lane <tgl@sss.pgh.pa.us>

Commit: c1352052ef1d4eeb2eb1d822a207ddc2d106cb13
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2004-03-17T01:02:24Z
Releases: 8.0.0
Replace the switching function ExecEvalExpr() with a macro that jumps
directly to the appropriate per-node execution function, using a function
pointer stored by ExecInitExpr.  This speeds things up by eliminating one
level of function call.  The function-pointer technique also enables further
small improvements such as only making one-time tests once (and then
changing the function pointer).  Overall this seems to gain about 10%
on evaluation of simple expressions, which isn't earthshaking but seems
a worthwhile gain for a relatively small hack.  Per recent discussion
on pghackers.

Files