authorgravatar for manlio.perillo@gmail.comManlio Perillo <manlio.perillo@gmail.com> 2023-02-03 12:44:52+01:00
committergravatar for git@vexu.euVeikka Tuominen <git@vexu.eu> 2023-02-04 17:23:03+02:00
logc1f71963a9b8c913acee0fc167e0a4ecdecd2890
tree94041759733087b83202458cbe86c05c1f592bbb
parent693b12f8e1c1d99d33c01961c1fdc972a5255eb6

compiler_rt: fix and improve documentation

- In Integer Bit Operations, use zeros consistently and fix the incorrect function descriptions - In ucmp, fix the incorrect signedness of the operands - In Integer Arithmetic, document the signedness of the operands in div, udiv, mod, umod, udivmod and divmod as it is done in LLVM documentation - In Float Conversion, replace "int_to_float" to "int to float" and "uint_to_float" to "uint to float"

1 files changed, 20 insertions(+), 20 deletions(-)

lib/compiler_rt/README.md+20-20
......@@ -51,31 +51,31 @@ Integer and Float Operations
5151| Done | Name | a | b | Out | Comment |
5252| ------ | ------------- | ---- | ---- | ---- | ------------------------------ |
5353| | | | | | **Integer Bit Operations** |
54| ✓ | __clzsi2 | u32 | ∅ | i32 | count leading zeroes |
55| ✓ | __clzdi2 | u64 | ∅ | i32 | count leading zeroes |
56| ✓ | __clzti2 | u128 | ∅ | i32 | count trailing zeros |
54| ✓ | __clzsi2 | u32 | ∅ | i32 | count leading zeros |
55| ✓ | __clzdi2 | u64 | ∅ | i32 | count leading zeros |
56| ✓ | __clzti2 | u128 | ∅ | i32 | count leading zeros |
5757| ✓ | __ctzsi2 | u32 | ∅ | i32 | count trailing zeros |
5858| ✓ | __ctzdi2 | u64 | ∅ | i32 | count trailing zeros |
59| ✓ | __ctzti2 | u128 | ∅ | i32 | count leading zeroes |
60| ✓ | __ffssi2 | u32 | ∅ | i32 | count leading zeroes |
61| ✓ | __ffsdi2 | u64 | ∅ | i32 | count leading zeroes |
62| ✓ | __ffsti2 | u128 | ∅ | i32 | count leading zeroes |
63| ✓ | __paritysi2 | u32 | ∅ | i32 | find least significant 1 bit |
64| ✓ | __paritydi2 | u64 | ∅ | i32 | find least significant 1 bit |
65| ✓ | __parityti2 | u128 | ∅ | i32 | find least significant 1 bit |
59| ✓ | __ctzti2 | u128 | ∅ | i32 | count trailing zeros |
60| ✓ | __ffssi2 | u32 | ∅ | i32 | find least significant 1 bit |
61| ✓ | __ffsdi2 | u64 | ∅ | i32 | find least significant 1 bit |
62| ✓ | __ffsti2 | u128 | ∅ | i32 | find least significant 1 bit |
63| ✓ | __paritysi2 | u32 | ∅ | i32 | bit parity |
64| ✓ | __paritydi2 | u64 | ∅ | i32 | bit parity |
65| ✓ | __parityti2 | u128 | ∅ | i32 | bit parity |
6666| ✓ | __popcountsi2 | u32 | ∅ | i32 | bit population |
6767| ✓ | __popcountdi2 | u64 | ∅ | i32 | bit population |
6868| ✓ | __popcountti2 | u128 | ∅ | i32 | bit population |
69| ✓ | __bswapsi2 | u32 | ∅ | i32 | bit parity |
70| ✓ | __bswapdi2 | u64 | ∅ | i32 | bit parity |
71| ✓ | __bswapti2 | u128 | ∅ | i32 | bit parity |
69| ✓ | __bswapsi2 | u32 | ∅ | i32 | byte swap |
70| ✓ | __bswapdi2 | u64 | ∅ | i32 | byte swap |
71| ✓ | __bswapti2 | u128 | ∅ | i32 | byte swap |
7272| | | | | | **Integer Comparison** |
7373| ✓ | __cmpsi2 | i32 | i32 | i32 | `(a<b) -> 0, (a==b) -> 1, (a>b) -> 2` |
7474| ✓ | __cmpdi2 | i64 | i64 | i32 | .. |
7575| ✓ | __cmpti2 | i128 | i128 | i32 | .. |
76| ✓ | __ucmpsi2 | i32 | i32 | i32 | `(a<b) -> 0, (a==b) -> 1, (a>b) -> 2` |
77| ✓ | __ucmpdi2 | i64 | i64 | i32 | .. |
78| ✓ | __ucmpti2 | i128 | i128 | i32 | .. |
76| ✓ | __ucmpsi2 | u32 | u32 | i32 | `(a<b) -> 0, (a==b) -> 1, (a>b) -> 2` |
77| ✓ | __ucmpdi2 | u64 | u64 | i32 | .. |
78| ✓ | __ucmpti2 | u128 | u128 | i32 | .. |
7979| | | | | | **Integer Arithmetic** |
8080| ✗ | __ashlsi3 | i32 | i32 | i32 | `a << b` [^unused_rl78] |
8181| ✓ | __ashldi3 | i64 | i32 | i64 | .. |
......@@ -165,7 +165,7 @@ Integer and Float Operations
165165| ✓ | _Qp_qtos |*f128 | ∅ | f32 | .. SPARC |
166166| ✓ | __trunckfdf2 | f128 | ∅ | f64 | .. PPC |
167167| ✓ | _Qp_qtod |*f128 | ∅ | f64 | .. SPARC |
168| ✓ | __fixhfsi | f16 | ∅ | i32 | rounding towards zero |
168| ✓ | __fixhfsi | f16 | ∅ | i32 | float to int, rounding towards zero |
169169| ✓ | __fixsfsi | f32 | ∅ | i32 | .. |
170170| ✓ | __fixdfsi | f64 | ∅ | i32 | .. |
171171| ✓ | __fixtfsi | f128 | ∅ | i32 | .. |
......@@ -180,7 +180,7 @@ Integer and Float Operations
180180| ✓ | __fixdfti | f64 | ∅ | i128 | .. |
181181| ✓ | __fixtfti | f128 | ∅ | i128 | .. |
182182| ✓ | __fixxfti | f80 | ∅ | i128 | .. |
183| ✓ | __fixunshfsi | f16 | ∅ | u32 | rounding towards zero. negative values become 0. |
183| ✓ | __fixunshfsi | f16 | ∅ | u32 | float to uint, rounding towards zero. negative values become 0. |
184184| ✓ | __fixunssfsi | f32 | ∅ | u32 | .. |
185185| ✓ | __fixunsdfsi | f64 | ∅ | u32 | .. |
186186| ✓ | __fixunstfsi | f128 | ∅ | u32 | .. |
......@@ -195,7 +195,7 @@ Integer and Float Operations
195195| ✓ | __fixunsdfti | f64 | ∅ | u128 | .. |
196196| ✓ | __fixunstfti | f128 | ∅ | u128 | .. |
197197| ✓ | __fixunsxfti | f80 | ∅ | u128 | .. |
198| ✓ | __floatsihf | i32 | ∅ | f16 | int_to_float conversions |
198| ✓ | __floatsihf | i32 | ∅ | f16 | int to float |
199199| ✓ | __floatsisf | i32 | ∅ | f32 | .. |
200200| ✓ | __floatsidf | i32 | ∅ | f64 | .. |
201201| ✓ | __floatsitf | i32 | ∅ | f128 | .. |
......@@ -209,7 +209,7 @@ Integer and Float Operations
209209| ✓ | __floattidf | i128 | ∅ | f64 | .. |
210210| ✓ | __floattitf | i128 | ∅ | f128 | .. |
211211| ✓ | __floattixf | i128 | ∅ | f80 | .. |
212| ✓ | __floatunsihf | u32 | ∅ | f16 | uint_to_float conversions |
212| ✓ | __floatunsihf | u32 | ∅ | f16 | uint to float |
213213| ✓ | __floatunsisf | u32 | ∅ | f32 | .. |
214214| ✓ | __floatunsidf | u32 | ∅ | f64 | .. |
215215| ✓ | __floatunsitf | u32 | ∅ | f128 | .. |