Skip to content

support nonlazybind for extern declarations #1024

@andrewrk

Description

@andrewrk

http://llvm.org/docs/LangRef.html#function-attributes

This attribute suppresses lazy symbol binding for the function. This may make calls to the function faster, at the cost of extra program startup time if the function is not called during program startup.

Currently the default is lazy binding. At the very least we should have the ability to specify nonlazybind for extern declarations. Some other things to explore:

  • Ability to tag a scope as wanting all functions called within to be marked nonlazybind.
  • Static control flow analysis - if a function is provably called from the main entry point, mark it nonlazybind

Metadata

Metadata

Assignees

No one assigned

    Labels

    proposalThis issue suggests modifications. If it also has the "accepted" label then it is planned.

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions