Skip to content

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

Closed
@iritkatriel

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