Ran
|
Jobs
1
|
Files
89
|
Run time
1min
|
Badge
Embed ▾
README BADGES
|
push
github
FFI: Fix 64 bit shift fold rules. Thanks to Peter Cawley. (cherry picked from commit 9e0437240) For `IR_BSHR`, `IR_BROL`, `IR_BROR` during `kfold_int64arith()` the left argument is truncated down to 32 bits, which leads to incorrect results if the right argument is >= 2^32. Also, `IR_BSAR` does an unsigned shift rather than a signed shift, but since this case branch is unreachable, it is harmless for now. This patch fixes all misbehaviours (including possible for `IR_BSAR`) to preserve IR semantics. Sergey Kaplun: * added the description and the test for the problem Part of tarantool/tarantool#10199 Reviewed-by: Sergey Bronnikov <sergeyb@tarantool.org> Reviewed-by: Maxim Kokryashkin <m.kokryashkin@tarantool.org> Signed-off-by: Sergey Kaplun <skaplun@tarantool.org>
5694 of 6032 branches covered (94.4%)
Branch coverage included in aggregate %.
21712 of 23445 relevant lines covered (92.61%)
2931751.98 hits per line
Lines | Coverage | ∆ | File |
---|---|---|---|
1 |
96.34 |
-0.1% | src/lj_record.c |
2 |
96.81 |
0.56% | src/lj_carith.c |
2 |
78.34 |
0.31% | src/lj_opt_fold.c |
33 |
87.16 |
-3.17% | src/lj_crecord.c |
ID | Job ID | Ran | Files | Coverage | |
---|---|---|---|---|---|
1 | 11380100489.1 | 89 |
92.97 |
GitHub Action Run |
Coverage | ∆ | File | Lines | Relevant | Covered | Missed | Hits/Line | Branch Hits | Branch Misses |
---|