We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
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
연산마다 레지스터가 하나씩은 필요하다. 그것을 어떻게 표현할지? 두가지 방법이 가능
결국 문제는 그래프 컬러링 알고리즘이 얼마나 잘 작동하냐이다. 일단 무난하게 2번으로?
The text was updated successfully, but these errors were encountered:
caller save는 단순히 call 때 그 레지스터들이 이미 사용중인 것으로 표현한다.
callee save는 임시 레지스터를 만들어서 처음에 그 값을 저장했다가 나중에 다시 저장하는 것으로 표현. 지금 snuplc는 로컬 변수를 전부 0으로 초기화 한다. 이것도 그냥 mov 연산으로?
이렇게 한다면 push, pop 연산은 아예 불필요해진다.
인스트럭션은 다음 표를 참조하자. https://www.agner.org/optimize/instruction_tables.pdf
레지스터가 정해진 연산은 integer 곱셈, 나눗셈이다(imul, idiv). 둘 다 eax이다. 방식 2로 갈 때 eax를 빈 레지스터로 사용하면 괜찮을듯?
Sorry, something went wrong.
No branches or pull requests
연산마다 레지스터가 하나씩은 필요하다. 그것을 어떻게 표현할지?
두가지 방법이 가능
결국 문제는 그래프 컬러링 알고리즘이 얼마나 잘 작동하냐이다. 일단 무난하게 2번으로?
The text was updated successfully, but these errors were encountered: