Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

execgen: add generic inliner #49728

Merged
merged 3 commits into from
Jun 8, 2020
Merged

execgen: add generic inliner #49728

merged 3 commits into from
Jun 8, 2020

Commits on Jun 5, 2020

  1. colexec: don't randomize batch size in benches

    This was making it hard to run the same benchmarks in a consistent way.
    
    Release note: None
    jordanlewis committed Jun 5, 2020
    Configuration menu
    Copy the full SHA
    13845e4 View commit details
    Browse the repository at this point in the history

Commits on Jun 6, 2020

  1. colexec: remove unnecessary execgen imports

    The .eg.go files had unnecessary imports of execgen, which is not
    required in the runtime generated code, and in fact is suspicious.
    
    Release note: None
    jordanlewis committed Jun 6, 2020
    Configuration menu
    Copy the full SHA
    269f635 View commit details
    Browse the repository at this point in the history

Commits on Jun 7, 2020

  1. execgen: add generic inliner

    This commit adds a new directive to execgen:
    
    // execgen:inline
    
    This directive causes a function that's annotated with it to be inlined
    into all of its callers via AST transformation. This kind of inlining is
    smarter than before - it permits arguments with names different from the
    names of the function's formal parameters, for example.
    
    This commit also changes the functions in distinct_tmpl to use this
    directive instead of the manual templating method.
    
    I think this is the only easy function to change. The rest have, at the
    simple level of difficulty, static template-time parameters, and at a
    harder level of difficulty, type parameters. Improving these cases
    holistically should come next.
    
    Release note: None
    jordanlewis committed Jun 7, 2020
    Configuration menu
    Copy the full SHA
    3ccbdbb View commit details
    Browse the repository at this point in the history