Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Basic block may end enlarging the number of instructions? #8

Open
DanieleParravicini opened this issue Apr 21, 2020 · 1 comment
Open

Comments

@DanieleParravicini
Copy link
Owner

Is it possible that basic blocks ends executing the very same instructions?

@DanieleParravicini
Copy link
Owner Author

yes it is possible.

Consider the following example

image
Imagine that BB0 executes 0 and produces 1/2.
To gain advantage from other basic blocks it moves 2 to BB1.
BB0 then executes 1 and store 2 in fifo related to next char
BB1 execute 2 and produces 3/4. 3 is moved to BB0 and 4 is kept in BB1.
In the end
BB0 next: 2,4
BB1 next: 5.
Once new char is fetched 4 will be executed 2 times.

  1. because BB0 has 4 in its fifo.
  2. because of istruction 2->3,4
    4 can be avoided in principle

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant