-
-
Notifications
You must be signed in to change notification settings - Fork 2.5k
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
update compiler_rt README and prettify it #13261
Conversation
This documents status of routines and adds the next work item "Decimal float library routines", which are only recommended for binary data. Complete absence of tests is also documented. This does not document the various aliases, e.g. those for ARM. Missing Integer library routines: - __addvsi3 - __addvdi3 - __addvti3 - __addvdi3 - __addvti3 - __subvsi3 - __subvdi3 - __subvti3 - __subvdi3 - __subvti3 - __mulvsi3 - __mulvdi3 - __mulvti3 - __mulvdi3 - __mulvti3 Missing floating library routines: - __powisf2 - __powidf2 - __powitf2 - __powixf2 Missing routines for symbol-level compatibility to gcc: - __ashlsi3 - __ashrsi3 - __lshrsi3
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.
make things more pretty.
- __gtdf2 // | ||
- __gttf2 // | ||
|
||
- dev other __cmpsf2 // a,b:f32, (a<b)->-1,(a==b)->0,(a>b)->1,Nan->1 |
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.
fixme, use same logic as the other Comparison
- __bid_adddd3 // a,b: dec64 -> dec64 | ||
- __dpd_addtd3 // a,b: dec128-> dec128 | ||
- __bid_addtd3 // a,b: dec128-> dec128 | ||
- __dpd_subsd3 // a,b: dec32, a - b |
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.
fixme
- __bid_unordtd2 // a,b: dec128 | ||
|
||
- __dpd_eqsd2 // a,b: dec32, a!=+-NaN and b!=+-Nan and a==b -> 0, else -> 1(nonzero) | ||
- __bid_eqsd2 // a,b: dec32 |
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.
repeated types
- __divdc3 // | ||
- __divtc3 // | ||
- __divxc3 // | ||
- dev unclear __powisf2 // a ^ b, TODO |
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.
number representation?
Purpose of this PR is to show status of compiler_rt with missing items and missing tests. While on it, I also added the next potential work package with severe limitation of not having Binary Encoded Decimals (BCD): Inability to represent accurately numbers like 0.2. |
Thanks! |
I have a suggestion for how to make this more readable, which is to tableify all the symbols, like this: Key
Implementation Status
markdown source:
|
I like the idea of a table, but there are some shortcomings to this very proposal:
|
The category is not a useful data point. It can be omitted entirely. |
This documents status of routines and adds the next work item "Decimal float library routines", which are only recommended for binary data. Complete absence of tests is also documented. This does not document the various aliases, e.g. those for ARM.
Missing Integer library routines:
Missing floating library routines:
Missing routines for symbol-level compatibility to gcc: