Skip to content

Remove redundant fields from basicblock: b_nofallthrough, b_exit, b_return #93444

Description

@iritkatriel

The fields b_nofallthrough, b_exit, b_return in the compiler's basicblock can be easily calculated form the opcode of the last instruction in the block, so we can remove them.

This change is in line with our general move to simplify the compiler front end by not making it calculate things that the backend can deduce. It increases safety because the cached values need to be kept correct through transformations/optimisations of the block, and this adds opportunities for bugs.

Metadata

Metadata

Assignees

Labels

interpreter-core(Objects, Python, Grammar, and Parser dirs)

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions