Skip to content

Reduce insert code size #75

@tibbe

Description

@tibbe

Currently the insert function generated ~600 lines of Cmm with GHC HEAD. The breakdown for each constructor is roughly:

  • Empty: 16 (2.7%)
  • BitmapIndexed: 213 (35.5%)
  • Leaf: 133 (22.2%)
  • Full: 65 (10.8%)
  • Collision: 63 (10.5%)

plus 33 (5.5%) shared lines. There are also 67 non-code lines.

Code related to collisions could probably be pulled out-of-line without a performance hit. We might also be able to avoid inlining larger function, such as Array.insert, without a performance penalty.

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