-
Notifications
You must be signed in to change notification settings - Fork 396
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
AArch64: Implement tableEvaluator #4633
Conversation
This commit implements tableEvaluator() for AArch64. Co-authored-by: KONNO Kazuhiro konno@jp.ibm.com Co-authored-by: Aaron Graham aaron.graham@unb.ca Co-authored-by: Md. Mahbubur Rahman mrahma15@unb.ca Signed-off-by: KONNO Kazuhiro <konno@jp.ibm.com>
This PR is based on the code from #4214. It generates the following instruction sequence for the
|
} | ||
else | ||
{ | ||
if (!constantIsUnsignedImm12(numBranchTableEntries)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this if
condition is being overly defensive. You already know from the if
guarding entry to this code that the numBranchTableEntries
is <= 5. I'd say just do the generateCompareImmInstruction
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
numBranchTableEntries
is >=5 here. So it is possible that exceeds the range of unsigned imm12.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ugh. I read the condition above incorrectly.
@genie-omr build aarch64 |
This commit implements tableEvaluator() for AArch64.
Co-authored-by: KONNO Kazuhiro konno@jp.ibm.com
Co-authored-by: Aaron Graham aaron.graham@unb.ca
Co-authored-by: Md. Mahbubur Rahman mrahma15@unb.ca
Signed-off-by: KONNO Kazuhiro konno@jp.ibm.com