Skip to content

Try to not 2-byte-align function pointers #1692

@kripken

Description

@kripken

Currently we align function pointers to 2 bytes - only even values. Removing that would shrink function table sizes by half, improving everything from compilation speed to startup speed to runtime speed.

There is now an option to set the alignment, FUNCTION_POINTER_ALIGNMENT. Sadly 1 (the optimal value, that we want) breaks on &Class::method function pointer calls, which llvm assumes have the lower bit zero (see test_polymorph).

Perhaps we can change something in LLVM for this.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions